问题描述
我需要使用Powerpoint或VBA将URL的图像保存到Windows计算机上的文件夹中。目的是我试图将Tableau仪表板的图片嵌入到我的Powerpoint中,但是由于某种原因,插入图片时该图片不会显示。使用VBA应该可以,因为我可以使用VBA将图像保存到文件夹中,然后使用VBA将其从文件夹插入到Powerpoint中。
现在,这是我在EXCEL中用来尝试将图像从Tableau保存到Windows文件夹中的代码。 Excel VBA或Powerpoint VBA均可用于此目的:
Public Declare Function URLDownloadToFile Lib "urlmon" Alias _
"URLDownloadToFileA" (ByVal pCaller As Long,_
ByVal szURL As String,_
ByVal szFileName As String,_
ByVal dwReserved As Long,_
ByVal lpfnCB As Long) As Long
Public Sub GURoL(url As String,FileName As String)
Dim lngRetVal As Long
lngRetVal = URLDownloadToFile(0,url,FileName,0)
If lngRetVal <> 0 Then
MsgBox "GURol godo: Can't download from " & url & " to " & FileName
End If
End Sub
Sub Download_Procedure()
'Saves an image to folder,needs to have jpg tho it looks like
'https://stackoverflow.com/questions/51858575/web-download-image-and-save-to-folder/51859060#51859060
Call GURoL("https://us-west-1.online.tableau.com/TableauaddressExample.png",_
"G:\My Drive\FolderExample.png") '<change your dest. path
End Sub
所以我正在使用上面的代码来保存图像。但是,它不适用于tableau图像,但可以与Google上的其他jpg图像一起使用。哪个很奇怪。
修复该步骤后,可以使用以下内容通过Powerpoint VBA从文件夹中保存图像:
Sub AddSavedImage()
'Adds a picture from your folder
'https://www.techrepublic.com/blog/microsoft-office/use-vba-to-insert-a-picture-file-onto-a-powerpoint-slide/
ActiveWindow.Selection.SlideRange.Shapes.AddPicture( _
FileName:="G:\FolderExample\FileExample.png",_
LinkToFile:=msoFalse,_
SaveWithDocument:=msoTrue,Left:=60,Top:=35,_
Width:=98,Height:=48).Select
End Sub
有人可以帮助我自动保存Tableau URL图像吗?如果我可以自动插入tableau URL图像(我发现),那会起作用,但是当我将其插入ppt时,也会出现错误。
解决方法
此画面网站/URL 图像需要您登录才能访问。你可以用 VBA 来做到这一点。但正如另一位评论者所说,可能域名是错误的