Excel 基于单元格数据隐藏行
如果列a中的单元格包含0,我想隐藏工作表中的某些行。这是使用公式计算的 例如,如果A1包含值“0”,则第1行应隐藏 我知道我可以在工作表的激活事件中写入此代码,但这会降低文件的性能Excel 基于单元格数据隐藏行,excel,vba,Excel,Vba,如果列a中的单元格包含0,我想隐藏工作表中的某些行。这是使用公式计算的 例如,如果A1包含值“0”,则第1行应隐藏 我知道我可以在工作表的激活事件中写入此代码,但这会降低文件的性能 是否有一种在不影响文件性能的情况下实现相同功能的好方法?您始终可以使用过滤器来实现这一点。我认为这样会更有效率 编辑: 要提高代码的性能,可以执行以下操作: 关闭事件 关闭计算 在运行循环以隐藏行之前 With Excel.Application .ScreenUpdating = False .En
是否有一种在不影响文件性能的情况下实现相同功能的好方法?您始终可以使用
过滤器来实现这一点。我认为这样会更有效率
编辑:
要提高代码的性能,可以执行以下操作:
关闭事件
关闭计算
在运行循环以隐藏行之前
With Excel.Application
.ScreenUpdating = False
.EnableEvents = False
.Calculation = xlCalculationManual
.Cursor = xlWait
End With
循环结束后
With Excel.Application
.ScreenUpdating = True
.EnableEvents = True
.Calculation = xlCalculationAutomatic
.Cursor = xlDefault
End With
希望这有帮助。此外,显式使用变量可以提高性能
和计算。尽管显式声明变量也会有所帮助。是的,但我不希望用户看到数据已被过滤,也不希望允许他们更改数据过滤器。有可能使用代码吗?不是答案-应该作为comment@brettdj字体我不同意。根本的问题是“是否有一种在不影响文件性能的情况下实现相同功能的好方法?”。使用“过滤器”也是一种方法。请详细地告诉我你为什么不同意。详细地说?因为一行使用过滤器不是答案。@Konstant:谢谢。我没有做计算手册。我也会试试。我相信这会加快速度!