【发布时间】:2022-01-18 04:25:27
【问题描述】:
我有一个名为“数据”的工作表,其中包含随后在其他工作表中引用的各种条目。
在data R1 中,当我使用 VBA 更新工作表时,我有一个过滤器似乎没有更新。
过滤器是:
=FILTER( Sites!C:C & " - " & Sites!B:B, LEFT(Sites!C:C, 2) = "NW")
如果我手动更新站点工作表,过滤器会看到新结果。但如果我使用 VBA 更新工作表,过滤器不会显示新结果。
这就是我更新网站工作表的方式
ThisWorkbook.Sheets("Sites").Cells(destRow, 2) = valA
ThisWorkbook.Sheets("Sites").Cells(destRow, 3) = valB
ThisWorkbook.Sheets("Sites").Cells(destRow, 4) = valB
是否应该像上面那样更新工作表来更新过滤器?它似乎要么恢复为空,要么使用最后的值。
我不确定这在我的 VBA 中是否重要
Application.Calculation = xlCalculationManual
Application.CalculateBeforeSave = False
如何让过滤器正确更新?
谢谢
【问题讨论】:
-
Application.Calculation = xlCalculationManual- 是的,这很重要,因为您关闭了自动计算公式。 -
关闭保存后,您将不会保留新结果。
-
谢谢。注释掉这两个条目,这确实允许它工作。但是工作表的更新需要更长的时间。有什么办法可以保留它,然后强制过滤器更新?