在某些计算机上调用“CopyPicture”时,Office服务器自动化失败

时间:2017-03-17 08:10:32

标签: excel vba excel-vba

我们用C ++ / Qt编写了一个应用程序,它从多个excel文件中读取一些数据,然后生成一个单词报告。我们使用Office自动化服务器的好处来读取/查找和复制excel文件中的数据,并将它们写入单个word文件。

该应用程序正常工作,我的办公室计算机没有任何重大问题。昨天我决定将应用程序复制到具有相同操作系统和办公室版本的笔记本电脑中。运行应用程序后,似乎有些事情错误了我的OS / Office。没有数据被复制到word文件中。经过调试后,我发现应用程序实际上可以读取/写入office文件,但未能调用 CopyPicture 自动化方法!!!

我想将范围复制为图片,因此我使用了“CopyPicture”方法。但似乎vba无法在我的笔记本电脑上调用copyPicture。

我会非常感激任何提示。谢谢

1 个答案:

答案 0 :(得分:0)

我发现了问题,它是用于复制数据的Excel文档。在这些文件中,有一些embeddedCharts。删除这些图表后代码工作正常!!!! (很奇怪)。无论如何,我试图让excel文件可见,以便查看操作是否顺利。运行后(使用embeddedCharts)代码工作正常(更奇怪!)

excel->dynamicCall("Visible", true );

我不知道原因,但是当excel文件可见时,copyPicture的错误就消失了!