Wordでは、Undoスタックをクリアするために、ActiveDocumentオブジェクトでUndoClearメソッドを使用できます。 ExcelのVBAフレーバーでマクロをプログラミングしている場合、Excelで使用する同様の方法があるかどうか疑問に思うかもしれません。

Excel VBAは、UndoClearのようなメソッドを提供していません。その理由は、マクロがブックに変更(変更)を加えるたびに、元に戻すスタックがExcelによって自動的にクリアされるためです。マクロが変更を加えず、それでも元に戻すスタックをクリアしたい場合は、ワークシートに無害な変更を加えるだけです。たとえば、次のマクロはセルA1の内容をA1にコピーして戻し、その過程で元に戻すスタックをクリアします。

Sub ClearUndo()

Range("A1").Copy Range("A1")

End Sub

注:

このページ(または_ExcelTips_サイトの他のページ)で説明されているマクロの使用方法を知りたい場合は、役立つ情報を含む特別なページを用意しました。

_ExcelTips_は、費用効果の高いMicrosoftExcelトレーニングのソースです。

このヒント(2463)は、Microsoft Excel 97、2000、2002、および2003に適用されます。Excel(Excel 2007以降)のリボンインターフェイス用のこのヒントのバージョンは、次の場所にあります。