Excel VBA多次插入图像而不复制、粘贴

Excel VBA多次插入图像而不复制、粘贴,excel,vba,Excel,Vba,这是个有点奇怪的问题 在我的一张excel表格上,我生成了一个pdf文档 代码的运行方式是,根据需要添加表段,并根据需要手动设置分页符,以便表不会分散在单个页面上。(大多数表格为5-10行) 在每页的底部,有足够的行剩余来插入图像。该图像只是几个正方形和一个文本框组合在一起,以提供免责声明和签名框 目前我一直在使用 Sheets(...).shapes(...).copy sheets(...).cells(...).pastespecial paste:=xlpasteall 有几个 do

这是个有点奇怪的问题

在我的一张excel表格上,我生成了一个pdf文档

代码的运行方式是,根据需要添加表段,并根据需要手动设置分页符,以便表不会分散在单个页面上。(大多数表格为5-10行)

在每页的底部,有足够的行剩余来插入图像。该图像只是几个正方形和一个文本框组合在一起,以提供免责声明和签名框

目前我一直在使用

Sheets(...).shapes(...).copy
sheets(...).cells(...).pastespecial paste:=xlpasteall 
有几个

doevents 
尝试确保它正确运行

我不断遇到80040100方法的问题 复制对象“形状”失败,错误1004。范围类的特殊方法失败

我想这可能是因为我没有doevents代码,但这并没有纠正这种情况

我相信将分组的形状保存为嵌入工作簿中的单个图像可能更容易,因此我可以使用插入而不是复制

问题是我不知道该怎么做

我可以将形状保存为工作表外的图像,但当我这样做时,质量下降,文本变得模糊

如有任何建议,将不胜感激


谢谢。

我在Excel中粘贴图像时遇到了随机的奇怪问题,通常是在循环中运行时,重试粘贴通常会成功,因此您可以尝试类似的方法,在这种情况下,粘贴会重试,直到成功为止(或固定次数的尝试仍然失败…)

Sub-CopySomeThings()
'...
'...
此工作簿。工作表(“源”)。形状(“复制此”)。复制
粘贴此工作簿。工作表(“目标”)。范围(“A50”)
等等
端接头
'粘贴问题修复:继续尝试,直到它工作或20次尝试
子系统(rng As范围)
我想我会坚持多久
我20岁以下的时候去做
出错时继续下一步
rng.PasteSpecial
如果错误号为0,则
调试。打印“粘贴失败”,i
多芬特
i=i+1
其他的
退出Do
如果结束
错误转到0
i=i+1
环
端接头

Fr粘贴部分可能如下所示:Hi Tim。我看到了你发布的代码,对我把它放在代码中的位置感到困惑。我不太熟悉处理错误。因此,我将您的sub粘贴到我的工作表中,然后在我的sub中添加“onerror go to pastepicretry”?嗨,Tim,谢谢您的回复。我似乎无法让它工作。我相信这是因为我的距离参考不是一个精确的单元格,而是经过计算的。在这个例子中,我的细胞是细胞(x-10,2)。有没有办法将其转换为合适的参考范围?谢谢。它做什么来代替工作?Cells()相当于Range(),只要x有效,我就发现问题并解决了。您的解决方案似乎有效。非常感谢你。