1
Application.ScreenUpdating = False
If ... something... Then
Range("calc02").EntireRow.Hidden = False // this is critical point
End If
Application.ScreenUpdating = True

行はすでに表示されているので何もする必要はありませんが、シート上の画像とテキスト ボックスが再描画されます (ちらつきます)。このちらつきを防ぐにはどうすればよいですか?

4

2 に答える 2

1

これは覚えておくと良いことです。行と列を非表示または非表示に設定するのは、特に繰り返し行う必要がある場合は非常に遅くなります。したがって、エンダーランドで説明されているように、常にテストを実行する価値があります。これはちらつきを防ぐのに役立ち、実行速度も速くなるはずです。

于 2012-08-22T13:21:06.790 に答える
1

追加

application.screenupdating = false
'your code here
application.screenupdating = true

これにより、これらの問題のほとんどが解決されるはずです。


追加の if ステートメントを追加して、行を非表示に設定する必要があるかどうかを確認して、不必要にそうしないようにします。

If ... something... Then
    if (Range("calc02").EntireRow.Hidden = true) then
        Range("calc02").EntireRow.Hidden = False // this is critical point
    end if
End If
于 2012-08-22T12:39:05.863 に答える