将照片插入Excel范围VBA中的Word书签

时间:2015-06-09 19:37:12

标签: excel vba excel-vba ms-word

我正在尝试使用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

代码一直在失败。非常感谢任何帮助,谢谢。

1 个答案:

答案 0 :(得分:2)

这是因为您的代码稍有不正确。 imagePath也是一个变量。当你把它放在Quotes中时,它就变成了一个字符串。由于我无法访问您帖子中提到的图片链接,因此我使用的是其他链接。

试试这个(在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