我正在尝试使用excel数据库构建报告生成器。我想从HTML链接插入照片到文字书签。我想知道这是否可能?
现在我的代码设置测试,如果我可以从HTML链接插入照片单独。如下图所示:
Sub photobomb
Dim imagePath As String
imagePath ="https://dl.dropbox.com/s/uywzy5yf08apk68/130%20Boreal%20Avenuexx.jpg"
With ActiveDocument
.Bookmarks("imagePath1").Range
.InlineShapes.AddPicture FileName:= "imagePath", _
LinkToFile:=False, _
SaveWithDocument:=False, _
End With
End Sub
代码不断出错。任何帮助都是非常感激的,谢谢。
这是因为您的代码有点不正确。imagePath
也是一个变量。当你把它放在Quotes
中,它就变成了一个字符串。由于我无法访问您帖子中提到的图片链接,所以我使用了另一个链接。
Try this (In MS Word)
Sub photobomb()
Dim imagePath As String
imagePath = "https://www.dropbox.com/static/images/lockbox.png"
ActiveDocument.Bookmarks("imagePath1").Range.InlineShapes.AddPicture FileName:=imagePath
End Sub
现在你所需要做的就是从Excel到Word的LateBind/EarlyBind,并使用上面的代码。
这里是一个小的例子,它是未测试的。将此代码粘贴到Excel模块中并运行
Sub Sample()
Dim oWordApp As Object, oWordDoc As Object
Dim FlName As String
Dim imagePath As String
'~~> Change link and path accordingly
imagePath = "https://www.dropbox.com/static/images/lockbox.png"
FlName = "C:MyFile.Docx"
'~~> Establish an Word application object
On Error Resume Next
Set oWordApp = GetObject(, "Word.Application")
If Err.Number <> 0 Then
Set oWordApp = CreateObject("Word.Application")
End If
Err.Clear
On Error GoTo 0
oWordApp.Visible = True
Set oWordDoc = oWordApp.Documents.Open(FlName)
oWordDoc.Bookmarks("imagePath1").Range.InlineShapes.AddPicture Filename:=imagePath
End Sub