Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Image 使用VBA在PowerPoint中插入/更新图像?_Image_Vba_Powerpoint - Fatal编程技术网

Image 使用VBA在PowerPoint中插入/更新图像?

Image 使用VBA在PowerPoint中插入/更新图像?,image,vba,powerpoint,Image,Vba,Powerpoint,我正在制作一个交互式Powerpoint演示文稿,它以前从我的本地服务器(XAMPP)读取了一个文本文件并显示了它。我现在想更新它,以便用户可以手工编写他们的响应,并将其显示在幻灯片上。我有一个jQuery插件,它允许用户使用手写笔,并将“图形”保存为本地服务器上的图像 我的问题是,如何使用VBA宏将图像插入PowerPoint?或者,由于图像始终具有相同的文件路径,但将替换为不同的图像,我能否以某种方式“更新”幻灯片上的图像?如果让人困惑的话,很抱歉 这是我尝试的VBA: Sub insert

我正在制作一个交互式Powerpoint演示文稿,它以前从我的本地服务器(XAMPP)读取了一个文本文件并显示了它。我现在想更新它,以便用户可以手工编写他们的响应,并将其显示在幻灯片上。我有一个jQuery插件,它允许用户使用手写笔,并将“图形”保存为本地服务器上的图像

我的问题是,如何使用VBA宏将图像插入PowerPoint?或者,由于图像始终具有相同的文件路径,但将替换为不同的图像,我能否以某种方式“更新”幻灯片上的图像?如果让人困惑的话,很抱歉

这是我尝试的VBA:

Sub insert()
    Dim oPic As Shape
    Set oPic = ActivePresentation.Slides(1).Shapes.AddPicture("http://localhost/image.png", False, True, 0, 0, -1, -1)
End Sub
我还可以在计算机上获取图像的路径,而不是服务器

当我运行宏时,会出现“未找到文件”错误。有人知道怎么了吗

谢谢


PS:如果有人感兴趣,该插件将被调用。

看起来我可以在完全相同的文件夹中插入图像:

Sub insert()
    Dim oPic As Shape
    Set oPic = ActivePresentation.Slides(1).Shapes.AddPicture("image.png", False, True, 0, 0, -1, -1)
End Sub

这是可行的,但如果有人知道如何进入另一个文件夹,请让我知道。如果我尝试使用
文件夹/image.png
/folder/image.png
作为文件路径,则它不起作用。

它不需要位于完全相同的文件夹中,但您确实需要使用Mac样式的路径:

#If Mac Then
    imagePath = (MacScript("get path to startup disk as string") & "Users:name:Desktop:SomeFolder:My_Picture.png")
#Else
    imagePath = "C:\path\to\My_Picture.png"
#End If

activeSlide.Shapes.AddPicture(imagePath, False, True, 10, 10)

希望这能有所帮助。

我不知道您的第一个代码有什么问题,因为当我为web上的任何图片运行它时,它都会放在我的演示文稿中。对于计算机上的图片,您应该声明完整路径或通过使用
ChDir c:\my path\here
@KazJaw将其更改为您选择的一个目录来设置“当前目录”@KazJaw可能在Mac上有所不同?