Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
复制/粘贴到word文档中的Excel VBA代码导致我的代码失败_Excel_Vba_Ms Word - Fatal编程技术网

复制/粘贴到word文档中的Excel VBA代码导致我的代码失败

复制/粘贴到word文档中的Excel VBA代码导致我的代码失败,excel,vba,ms-word,Excel,Vba,Ms Word,我有一张excel表格 正在生成word文档(然后转换为PDF) 代码循环遍历不同的数据行,并基于数据在word中创建一个页面 循环的一部分从Excel中获取一个图形并将其粘贴到word页面中 这些代码都很好用,它以我想要的方式生成word文档。但是图表的复制/粘贴给我带来了断断续续的问题 奇怪的行为是: 1-我的代码在完成数据循环之前会突然退出。 2-我无法在中断模式下使用F8单步执行代码,只要我找到进行粘贴的代码,代码就会运行所有内容。 3-如果我在粘贴后放置一个断点,让代码停止并连续按f5

我有一张excel表格 正在生成word文档(然后转换为PDF)

代码循环遍历不同的数据行,并基于数据在word中创建一个页面 循环的一部分从Excel中获取一个图形并将其粘贴到word页面中

这些代码都很好用,它以我想要的方式生成word文档。但是图表的复制/粘贴给我带来了断断续续的问题

奇怪的行为是: 1-我的代码在完成数据循环之前会突然退出。 2-我无法在中断模式下使用F8单步执行代码,只要我找到进行粘贴的代码,代码就会运行所有内容。 3-如果我在粘贴后放置一个断点,让代码停止并连续按f5,那么我不会让代码突然退出

(对不起,解释得这么长)

这是发生问题的代码片段

            IndividualChartSheet.ChartObjects("IndividualCompletionChart").Copy
            DoEvents
            objRange.PasteSpecial Link:=False, DataType:=wdPasteMetafilePicture, Placement:=wdWrapSquare, DisplayAsIcon:=False
            Application.CutCopyMode = False
            DoEvents
            
            Set myShape = objDoc.InlineShapes.Item(objDoc.InlineShapes.Count).ConvertToShape
            myShape.WrapFormat.Type = wdWrapBehind
            myShape.RelativeVerticalPosition = wdRelativeVerticalPositionPage
            myShape.Top = InchesToPoints(2)
            myShape.Left = InchesToPoints(-0.4)
objRange是对我的word对象中某个范围的引用

我可以通过在应用程序上设置断点来运行代码。CutCopyMode=False,然后按F5。但我希望将此工具传递给其他用户,因此我不需要修复此问题

我在DoEvents中添加了一个选项,经过一些搜索后,CutCopyMode=False。 我还尝试将粘贴命令移动到一个单独的函数中。
但那没用。

万一有人感兴趣,我最终会把它查个水落石出

这么奇怪的一个,我花了很长时间才弄明白

基本上,我构建word文档的部分代码还添加了超链接,以便查看我最终输出(word文档转换为pdf文件)的人可以在文档中跳跃

我的超链接和书签基于员工姓名,word不喜欢我在超链接/书签名称中使用非字母数字字符。一旦我删除了这些代码,代码就可以顺利运行了