我正在编写VBA代码以自动化Excel中的某些进程,我遇到了一个非常奇怪的行为,我无法找到文档/帮助。
我有一个程序MAJ_GF
首先执行函数GF.Update
,检查结果,然后启动过程GF.Build
(基本上从GF.Update
获取的数据来自不同的工作表并用它做了很多东西)。
在某些时候,这个"一堆东西"需要使用数据透视表,因此GF.Build
包含以下行:
Set pvt = ThisWorkbook.PivotCaches.Create(xlDatabase, _
"'source_GF'!R1C1:R" & j & "C" & k).CreatePivotTable("'TCD_GF'!R4C1", "GFTCD1")
奇怪的行为是:
MAJ_GF
时,VBA正确执行GF.Update
,然后启动GF.Build
,并在上述行停止投诉&#34;错误的参数或程序调用&#34; < / LI>
GF.Update
,然后手动运行GF.Build
时,一切顺利,GF.Build
完成从开始到结束所做的事情,没有错误MAJ_GF
然后VBA按预期停在线路上,当我说&#34;继续&#34; ...它只是继续顺利,没有错误!我转过身来,绕过它,仔细检查每个变量的值,这没有任何意义。
任何人的想法?
答案 0 :(得分:4)
很少有想法出现在我的脑海中:
DoEvents
和Application.Wait
Application.Visible = False
并启用ScreenUpdating
帮助.. 不是说我太乐观了,要么会解决你的问题 - 但试一试!祝你好运!