Vba 为什么AddOLEObject在MS Word中如此缓慢

Vba 为什么AddOLEObject在MS Word中如此缓慢,vba,performance,ms-word,ole,Vba,Performance,Ms Word,Ole,我正在使用以下方法调用以编程方式将OLE对象插入MS Word表中: table.Cell(row, column).Range.InlineShapes.AddOLEObject(CLASS, FILE, ...) 问题是电话太慢了。将OLE对象添加到文档中需要一秒钟以上的时间。什么能让这一切变慢?我确信它依赖于与对象关联的应用程序?有没有加快速度的办法,哪怕是一点点?谢谢。执行OLE插入从来都不是很快,因为涉及的内容很多(例如,除非您以图标形式插入,否则将需要对象的显示图像) 如果对象是由

我正在使用以下方法调用以编程方式将OLE对象插入MS Word表中:

table.Cell(row, column).Range.InlineShapes.AddOLEObject(CLASS, FILE, ...)

问题是电话太慢了。将OLE对象添加到文档中需要一秒钟以上的时间。什么能让这一切变慢?我确信它依赖于与对象关联的应用程序?有没有加快速度的办法,哪怕是一点点?谢谢。

执行OLE插入从来都不是很快,因为涉及的内容很多(例如,除非您以图标形式插入,否则将需要对象的显示图像)

如果对象是由进程内对象创建的(参见旧的ActiveX窗体控件之一),则速度可能会快得多


如果您使用的是对象服务器(如Excel),Word必须为每次插入启动Excel。不快。通过在开始时独立启动服务器,并在Word中关闭屏幕更新,您可能可以加快速度,但我认为您需要运行一些性能测试。

执行OLE插入从来都不是很快,因为涉及的内容很多(例如,除非作为图标插入,否则需要对象的显示图像)

如果对象是由进程内对象创建的(参见旧的ActiveX窗体控件之一),则速度可能会快得多


如果您使用的是对象服务器(如Excel),Word每次插入都必须启动Excel。这不是很快。您可以通过在开始时独立启动服务器以及关闭Word中的屏幕更新来加快速度,但我认为您需要运行一些性能测试。

执行OLE插入从来都不是很快,因为e涉及的内容很多(例如,除非您作为图标插入,否则将需要对象的显示图像)。如果对象是由进程内对象创建的,则速度可能会快得多(参见旧的ActiveX窗体控件之一)。如果您使用的是对象服务器(如Excel),Word每次插入都必须启动Excel。这不是很快。您可以通过在开始时独立启动服务器以及关闭Word中的屏幕更新来加快速度,但我认为您需要运行一些性能测试。谢谢@bibadia:首先打开服务器应用程序did将插入速度提高了近75%。非常感谢您的提示。您是否可以添加注释作为答案,以便我可以接受。执行OLE插入从来都不是很快,因为涉及的内容很多(例如,除非您作为图标插入,否则需要对象的显示图像)。如果对象是由进程内对象创建的,则速度可能会快得多(参见旧的ActiveX窗体控件之一)。如果您使用的是对象服务器(如Excel),Word每次插入都必须启动Excel。这不是很快。您可以通过在开始时独立启动服务器以及关闭Word中的屏幕更新来加快速度,但我认为您需要运行一些性能测试。谢谢@bibadia:首先打开服务器应用程序d我把插入速度提高了将近75%。非常感谢你的提示。你能添加你的评论作为答案吗?这样我就可以接受了。