エクセルれんと(8)
そんなわけでセルに対するDirtyフラグ(再計算が必要であることを意味するフラグ)を探していたところ、あっさり発見した。その名もDirty。こいつをRangeオブジェクトに対して呼び出すだけで良い。
これならundoも出来るし、ほとんどCPU負荷もかからない。ごちゃごちゃ書いているうちに素晴らしいhackとしてここに完成したのであった。*1
'ひとつ前の選択範囲を記憶しておく
Public rLastRange As Range
Private Sub Worksheet_SelectionChange(ByVal rTarget As Range)
If (Not rLastRange Is Nothing) Then
rLastRange.Dirty
End If
Set rLastRange = rTarget
End Sub
*1:このテクニックは自由に使ってもらってヨロシイ!(`ω´)