我希望使用Excel将图像插入到MS Word文档(.docx)中的书签中。我偶然发现了一个几乎完美的Word VBA解决方法,除了它当然是一个位于Word中的代码(我只是将它保存在全局模板中)。我需要它在Excel中的原因是因为我无法将宏保存在.docx文件中---我无法将其保存为启用宏的文档,因为它会破坏现有文件Excel中的VBA(另一个人做了:)。我确实已经用尽所有努力谷歌搜索,但没有确切的解决方案。作为参考,这是我正在谈论的'修改'代码。我在vbaexpress.com
中从用户fumei复制了它xAxis: {
type: 'datetime',
ordinal: false,
startOnTick: true,
endOnTick: true,
tickInterval: 3600000,
dateTimeLabelFormats: {
day: '<b>%b %e</b>'
}
}
我希望得到任何帮助:)
更新
向Imran致敬:)你的代码是一个很好的帮助,但我似乎无法为多个图像工作,...我甚至不能尝试所有的事情,但所有他们将新图像粘贴到同一个书签上。加上失败的Office 365增加了进退两难的局面。我将在稍后重新安装它,并将在明天发表评论:(我出于我的智慧并尝试将循环功能合并到我发布的原始代码中。以下代码是我尝试失败的原因:
Sub FillABookmark(strBM As String, strText As String)
Dim j As Long
With ActiveDocument
.Bookmarks(strBM).Range _
.InlineShapes _
.AddPicture FileName:=strText
j = ActiveDocument.InlineShapes.Count
.InlineShapes(j).Select
.Bookmarks.Add strBM, Range:=Selection.Range
End With
End Sub
Sub InsertScreenshots()
Call FillABookmark("Image_1", "C:\Users\Public\Documents\Image1.png")
Call FillABookmark("Image_2", "C:\Users\Public\Documents\Image_2.png")
Call FillABookmark("Image_3", "C:\Users\Public\Documents\Image_3.png")
End Sub
答案 0 :(得分:1)
如果只是想要在word文档中添加的图像,请使用此
Sub FillABookmark(bookmarkname As String, imagepath As String)
Dim objWord As Object
Dim objDoc As Object
On Error Resume Next
Set objWord = GetObject(, "Word.Application")
If objWord Is Nothing Then
Set objWord = CreateObject("Word.Application")
objWord.Visible = True
objWord.Documents.Open "D:\imran.docx"
End If
Set objDoc = objWord.activedocument
With objDoc
.Bookmarks(bookmarkname).Select
.Shapes.AddPicture Filename:=imagepath
End With
With objDoc
.Bookmarks(bookmarkname).Select
.Shapes.AddPicture Filename:=imagepath
End With
With objDoc
.Bookmarks(bookmarkname).Select
.Shapes.AddPicture Filename:=imagepath
End With
End Sub
Sub InsertScreenshots()
Call FillABookmark("test", "C:\Users\Public\Documents\1.jpg")
End Sub