使用VBScript为Word书签位置添加带Alt Text的图片遇问题求助
问题排查:VBScript给Word插入图片添加Alt Text失效
你的代码里有两个明显的语法错误,直接导致AlternativeText属性无法生效:
- 错误使用
Set关键字:AlternativeText是字符串类型的属性,直接赋值即可,不需要用Set(Set仅用于给对象变量赋值) - 属性调用缺少对象引用:
.AlternativeText前面没有指定要操作的对象,必须通过之前创建的SHP对象来访问这个属性
修正后的完整代码如下:
Set objWord = CreateObject("Word.Application") objWord.Visible = False objWord.DisplayAlerts = False Set doc = objWord.Documents.Open("C:\Test.docx") On Error Resume Next Set SHP = doc.Bookmarks("bkm_1").Range.InlineShapes.AddPicture("C:\my_image.png") ' 修正:去掉Set,指定SHP对象 SHP.AlternativeText = "This is the alt text" On Error GoTo 0 Call doc.SaveAs2("C:\test_update.docx", 12) doc.Saved = TRUE objWord.Quit
额外建议:可以去掉On Error Resume Next(或者在错误处理里增加SHP是否创建成功的判断),这样能及时发现书签不存在、图片路径错误等问题,方便调试。
内容的提问来源于stack exchange,提问作者Jennifer
相关产品推荐
相关产品推荐

