gpt4 book ai didi

vba - 包含宏的 Excel 工作簿即使在空闲时也使用 50% CPU

转载 作者:行者123 更新时间:2023-12-02 21:48:38 24 4
gpt4 key购买 nike

第一:

  • 使用 Excel 2010、Win 7
  • 所有其他附加组件均已停用
  • 所有电子表格都将上次使用的单元格缩减为最小行、列值
  • 我有一台按照当今标准的旧机器,Dell Inspiron 6400,1.73 GHz,3.3 Gig 内存

我有一个电子表格,当打开并处于事件状态时,即使在空闲时,它也至少使用 50% 的 CPU。如果我随后运行其他程序,这会导致计算机过热并关闭。几个月前,我在另一个论坛上发布了这个问题,最后的建议是“别担心”。好吧,我不能再这样做了。这已经成为一个问题。

起初我以为这是任何带有宏的工作簿。从那时起我就说服自己事实并非如此。然后我想这可能是我添加的附加组件。情况也并非如此。我阅读时将电子表格最小化到最小尺寸。这没有帮助。该工作簿具有自动打开功能,可以保存备份、从互联网上收集一些数据并对这些数据进行一些操作。我把这个子程序彻底删除了,没有效果。另一件需要注意的事情是,如果我打开另一个工作簿,也将其保持打开状态,并使第二个工作簿成为事件工作簿,则 CPU 使用率几乎为零。最后要注意的是,我对本工作簿的“最终版本”有几个前身。他们都没有这个cpu问题。在某个地方,不知何故,我在这个“最终版本”中添加了一些代码,导致了这个问题。

我希望有人能给我一些线索,告诉我还需要寻找什么。我将把这些旧备份与当前版本进行比较,但这将是一个很长的路要走。任何建议将不胜感激。

最佳答案

根据我之前的评论,当每次打开工作簿时运行 Auto_Open 宏时,它会创建一个与其 Internet 数据的新连接,而不会丢弃以前的连接。这些古老的连接应列为数据 ► 连接 ► 连接和/或数据 ► 获取外部数据 ► 现有连接。

由于我没有创建互联网连接的完整方法和参数,因此我将提供这种“事件宏”,每当工作簿关闭时,它都会删除所有连接。

Private Sub Workbook_BeforeClose(Cancel As Boolean)
With ThisWorkbook
Dim cn As Object
For Each cn In .Connections
cn.Delete
Next cn
.Save
End With
End Sub

该宏进入 ThisWorkbook 代码表。请注意,它还会保存您的工作簿;如果这不是想要的行为,请将代码移至模块表并将其更改为可以手动运行的公共(public)宏。

关于vba - 包含宏的 Excel 工作簿即使在空闲时也使用 50% CPU,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27878725/

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