gpt4 book ai didi

vba - CreatePivotTable() 上的奇怪/不稳定行为

转载 作者:行者123 更新时间:2023-12-02 17:04:51 25 4
gpt4 key购买 nike

我正在编写 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,并停在上述提示的行处“错误的参数或过程调用”
  • 当我手动运行 GF.Update,然后手动运行 GF.Build 时,一切都会顺利进行,并且 GF.Build 会执行其功能从头到尾都没有错误
  • 更奇怪的是,当我在相关行上设置断点时,运行 MAJ_GF 然后 VBA 按预期在该行暂停,当我说“继续”时...它会顺利继续并且没有错误!

我反复检查了这个问题,仔细检查了每个变量的值,但这毫无意义。

有人有想法吗?

最佳答案

我的脑海中浮现出一些想法:

  1. 后台仍在进行一些更新。在您提到的行之前尝试 DoEventsApplication.Wait
  2. 另请检查是否有任何数据连接能够在后台更新 - 如果是,请禁用后台刷新
  3. 极少数情况下(通常在旧版本中以及涉及图表时),取消隐藏 Excel 窗口(如果您使用 Application.Visible = False 并启用 ScreenUpdating 会有所帮助......
  4. 您是否使用任何“异国情调”的引用资料/插件?禁用它们并查看问题是否仍然存在。
  5. 尝试重新启动计算机

并不是说我太乐观地认为这两种方法都能解决您的问题 - 但请尝试一下!祝你好运!

关于vba - CreatePivotTable() 上的奇怪/不稳定行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14943596/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com