【问题标题】:Calculate the excel sheet ONLY when needed仅在需要时计算 excel 表
【发布时间】:2015-02-16 08:58:30
【问题描述】:

需要知道ActiveSheet.Calculate 是否计算活动工作表及其依赖项,如SUMIFS(OTHER SHEETS), INDIRECT(OTHER SHEETS)

考虑到我的工作簿设置为手动计算,我需要您的帮助以找到正确的代码以在按列过滤工作表时触发 ActiveSheet.Calculate

【问题讨论】:

  • 究竟是什么问题,到目前为止您尝试过什么来解决它?从我的阅读来看,这个问题的背景信息似乎比需要的要多得多,如果您可以将其简化为一个简洁、可回答的问题,这将有助于获得有用的答案。
  • Worksheet.calculate 不考虑其他工作表上未计算的依赖关系。是什么原因你不能每次想重新计算的时候都按F9?
  • @Aiken,我试图提供详细信息以帮助您全面了解我遇到的问题,以便提出合适的解决方案。我确实在此说明中简洁明了 我需要您对此请求的帮助。如果我使用正确的操作仅重新计算活动工作表。过滤工作表时触发 ActiveSheet.Calculate 的正确代码是什么。
  • 与其将此信息添加为评论,不如考虑编辑您的问题。您可以通过单击问题正文下方的小“编辑”文本来执行此操作。在 Stack Overflow 上,简单地询问代码通常是不行的,但在你的情况下,你可能会得到足够具体的信息,以至于它只是一个简单的一两行语句。

标签: vba excel excel-2010 excel-2007


【解决方案1】:

按照@Charles Williams 的建议,我将ActiveSheet.Calculate 更改为Application.Calculate 以考虑未计算的依赖关系。

为了在工作簿设置为手动计算时检测列过滤操作,我将每个过滤列中的第一个单元格更改为带有动态 .ListFillRangeComboBox,以便能够在更改时触发 Application.Calculate 操作.

【讨论】:

    猜你喜欢
    • 2018-02-26
    • 2022-01-12
    • 2017-09-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-16
    相关资源
    最近更新 更多