如何在 PowerPoint 中根据文本框值插入图片

How do I insert picture based on textbox value in PowerPoint

我有一个代码可以从 Excel 中提取数据并将其插入到 PowerPoint 中的多张幻灯片中。

Dim I As Integer
Dim oXL As Object 'Excel.Aplication
Dim OWB As Object 'Excel.workbook
Dim oSId As Slide
Dim A As Integer
Dim B As Integer
Set oXL = CreateObject(“Excel.Application”)
Set OWB = oXL.Workbooks.Open(FileName:="FileName.xlsx")
A = InputBox(“Page From")
B = InputBox(“Page To")

For I = A To B

oSId.Shapes(“Title l").TextFrame.TextRange.Text = OWB.Sheets(“Sheet1").Range(“A" &
CStr(l)). Value
oSId.Shapes(“Subtitle 2").TextFrame.TextRange.Text = OWB.Sheets(“Sheet1").Range(“B" &
CStr(l)). Value
oSId.Shapes(“Text Placeholder 3").TextFrame.TextRange.Text = OWB.Sheets(“Sheet1").Range(“C" & CStr(l)).Value
oSId.Shapes(“Text Placeholder 4").TextFrame.TextRange.Text = OWB.Sheets(“Sheet1").Range(“D" & CStr(l)).Value

Next
OWB.CIose
oXL.Quit
Set OWB = Nothing
Set oXL = Nothing

End Sub

我希望代码根据 Excel 的单元格值自动将图片插入到 PowerPoint 中。

例如:

在 PowerPoint 幻灯片中,范围 A1 为 "Apple",范围 A2 为 "Orange",范围 A3 为 "Pear"

我有一个文件夹 D:\Users\User\Desktop\Picture\,其中包含 "Apple.jpg"、"Orange.jpg"、"Pear.jpg" 的照片。

代码会将文件夹中的图片插入幻灯片。

感谢您的帮助和指导!谢谢。

如果我理解正确的话,你的图片名称在 excel 范围内("A1")。所以你可能需要像这样的代码以下:

oSId.Shapes.AddPicture( _
   FileName:="D:\Users\User\Desktop\Picture\" & OWB.Sheets(“Sheet1").Range(“A" & CStr(l)).Value & " .jpg", _
   LinkToFile:=msoFalse, _
   SaveWithDocument:=msoTrue, Left:=50, Top:=30, Width:=100, Height:=50).Select