対象:Excel2003, Excel2007, Excel2010
アクティブシートのテキストボックスをすべて削除するマクロをご紹介しました。ShapesのCountだけループを回して、もしTypeがmscTextBoxだった削除するという方法を使ったマクロです。
この記事の最後に示唆したとおり、実は、ループ回さなくても、テキストボックスを一括削除することができます。
[スポンサードリンク]
その方法をご紹介しておきます。
▼アクティブシートのテキストボックスだけをまとめて削除するコード
ActiveSheet.TextBoxes.Delete
ActiveSheet.TextBoxes.Delete
「ActiveSheet.TextBoxes.Delete」というコードだけで、アクティブなシートのテキストボックスをすべて削除できてしまいます。
イミディエイトウィンドウに、
ActiveSheet.TextBoxes.Delete
と入力して[Enter]キーを押せば、テキストボックスを削除できます。
あるいは、
Sub テキストボックスを削除する() ActiveSheet.TextBoxes.Delete End Sub
のようなSubプロシージャにしても勿論OKです。
TextBoxesメソッドは、オブジェクトブラウザーでは非表示になっていますけれど、
ActiveSheet.TextBoxes.Delete
というコードは割と有名なコードのようで、日本語圏でも英語圏でも掲示板などで、見かけることのある裏技的なコードです。
最終更新日時:2020-03-31 06:52
[スポンサードリンク]
Home » エクセルマクロ・Excel VBAの使い方 » DrawingObjects » ループを使わずテキストボックスをすべて削除するーTextBoxes.Delete