word VBA使用InsertFile插入word文件(其中图引用于外部excel对象)后弹出“链接的文件不可用”

一路潇洒~ 2017-03-15 03:05:09
主要语句:docObject.ActiveWindow.Selection.InsertFile(wordPath);office 2010与office2016报错信息如下。同时尝试被插入word中的excele对象断开,也一样出现该问题。

该程序功能对应于word界面:“插入--对象--文件中的文字 ”。
在word中操作,一切正常。
无法实现的程序:
shapsCount:= r.InlineShapes.Count; //代表图片、OLE 对象以及作为 INCLUDEPICTURE 或 EMBED 域结果的 ActiveX 控件
r.InlineShapes(i).LinkFormat.AutoUpdate:= false;
r.InlineShapes(i).LinkFormat.BreakLink();
...全文
1769 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
一路潇洒~ 2017-06-28
  • 打赏
  • 举报
回复
TSL语言解决方法: getOleObject('word.application',3,wApp); if not ifObj(wApp) then begin writetolog('log','','【Error】无法使用getOleObject获取word组件!'); return false; end; if not FileExists('',wordPath) then return false; docObj := wApp.documents.Open(wordPath); if not ifObj(docObj) then return false; //Word 仍允许此过程用状态栏提示、输入框、对话框或信息框等工具来显示和检索信息 wApp.ScreenUpdating:= False; wApp.DisplayAlerts := wdAlertsNone(); shapeCount:= docObj.InlineShapes.Count; if shapeCount>0 then begin for i:= 1 to shapeCount do begin if docObj.InlineShapes(i).Type<>12 then continue; docObj.InlineShapes(i).Select(); docObj.ActiveWindow.Selection.Cut(); docObj.ActiveWindow.Selection.PasteSpecial(0,false,wdInLine(),false,14,"",""); end; end; docObj.Application.Templates("Normal.dotm").Saved := true; docObj.close(wdSaveChanges()); return 1;
一路潇洒~ 2017-06-28
  • 打赏
  • 举报
回复
最终解决方法,word VBA程序如下: Sub convertExcelLinkToPicture() ' ' demo 宏 'OLEFormat '或者Chart对象 '或者直接CopyAsPicture ' ' ActiveDocument.Content.Select ' With Selection ' .CopyAsPicture ' .Collapse Direction:=wdCollapseEnd ' .PasteSpecial DataType:=wdPasteMetafilePicture ' End With MsgBox "fields:" & ActiveDocument.Fields.Count MsgBox "InlineShapes:" & ActiveDocument.InlineShapes.Count Application.ScreenUpdating = False Application.DisplayAlerts = wdAlertsNone For i = 1 To ActiveDocument.InlineShapes.Count 'MsgBox ActiveDocument.InlineShapes(i).OLEFormat.ClassType ' ConvertTo _ ' ClassType:="Word.Picture" 'OK ActiveDocument.InlineShapes(i).Select Selection.Cut Selection.PasteSpecial link:=False, _ DataType:=14 Next i ActiveDocument.Save End Sub
赵4老师 2017-03-20
  • 打赏
  • 举报
回复
请检查每个函数调用的返回值。
一路潇洒~ 2017-03-17
  • 打赏
  • 举报
回复
人都去哪儿呢?
一路潇洒~ 2017-03-15
  • 打赏
  • 举报
回复
Sub demo() ' ' demo 宏 ' MsgBox "fields:" & ActiveDocument.Fields.Count MsgBox "InlineShapes:" & ActiveDocument.InlineShapes.Count Application.ScreenUpdating = False For i = 1 To ActiveDocument.InlineShapes.Count '=====8 'MsgBox wdInlineShapeLinkedPictureHorizontalLine MsgBox "InlineShapes(" & i & ").LinkFormat.Type:" & ActiveDocument.InlineShapes(i).LinkFormat.Type '==8 MsgBox ActiveDocument.InlineShapes(i).LinkFormat.Type 带有横线的链接图片 'ActiveDocument.InlineShapes(i).LinkFormat.BreakLink 'ActiveDocument.InlineShapes(i).ConvertToShape 'ActiveDocument.InlineShapes(i).LinkFormat.SavePictureWithDocument = True 'msoLinkedOLEObject----10 '---8 'MsgBox ActiveDocument.InlineShapes(i).LinkFormat.Type MsgBox "excel SourceName:" & ActiveDocument.InlineShapes(i).LinkFormat.SourceName Documents(ActiveDocument.InlineShapes(i).LinkFormat.SourceName).Fields(1).Unlink 'MsgBox ActiveDocument.InlineShapes(i).LinkFormat.AutoUpdate = False ActiveDocument.InlineShapes(i).LinkFormat.BreakLink 'ActiveDocument.InlineShapes(i).LinkFormat.Update Next i ActiveDocument.Save End Sub
标题SpringBoot构建的人工智能时代个人计算机安全防护科普系统研究AI更换标题第1章引言阐述研究背景、意义,分析国内外在个人计算机安全防护科普方面的现状,并介绍论文研究方法和创新点。1.1研究背景与意义说明人工智能时代个人计算机安全防护的重要性。1.2国内外研究现状概述国内外在个人计算机安全防护科普系统的研究进展。1.3研究方法与创新点介绍本文采用的研究方法以及创新之处。第2章相关理论概述SpringBoot框架、人工智能技术及计算机安全防护的理论基础。2.1SpringBoot框架简介介绍SpringBoot框架的特点及其在科普系统中的应用。2.2人工智能技术概述阐述人工智能技术的基本原理及其在安全防护中的应用。2.3计算机安全防护理论分析个人计算机安全防护的基本原理和方法。第3章科普系统设计详细介绍基于SpringBoot的人工智能时代个人计算机安全防护科普系统的设计思路和实现过程。3.1系统架构设计阐述科普系统的整体架构设计及各模块功能。3.2科普内容策划与设计分析科普内容的选择、编排和设计原则。3.3交互功能设计介绍科普系统的交互功能,提升用户体验。第4章系统实现与测试详述科普系统的实现过程,包括前端开发、后端实现和系统测试等环节。4.1前端开发实现介绍前端界面的设计、开发和实现过程。4.2后端功能实现详述后端功能的实现,包括数据处理、安全防护策略等。4.3系统测试与优化阐述系统测试的方法、过程和结果,以及针对测试结果的优化措施。第5章应用效果评估通过实际应用案例,评估科普系统在提升个人计算机安全防护意识方面的效果。5.1应用案例选取选择具有代表性的应用案例进行分析。5.2效果评估方法介绍评估科普系统效果的方法和指标。5.3评估结果分析对评估结果进行详细分析,验证科普系统的有效性。第6章结论与展望总结研究成果,指研究的不足之处,并展望未来的研究方向。6.1研

2,503

社区成员

发帖
与我相关
我的任务
社区描述
VBA(Visual Basic for Applications)是Visual Basic的一种宏语言,是在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言。
社区管理员
  • VBA
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧