書式も含めて表を削除するマクロ
3行マクロ 31回
3行マクロ 書式も含めて表を削除するマクロ
表を削除したい時に、表を選択して「Delete」キーを押すと文字や数字などが削除されますが、数式や値、表示形式や書式などは残されたままになります。セルの内容を削除しても色や線を削除できないので、メニューの編集からクリアを選択しなければなりません。
今回は、簡単に指定した表を削除するマクロを紹介します。
(サンプルファイルは、こちらから 3行マクロ31回サンプルデータ)
Excelバージョン:
表を削除する前に表の選択を簡単にする
今回使うのは、 CurrentRegionプロパティです。
CurrentRegionプロパティは空白のセルで囲まれた範囲を読み取り、参照します。
書式 オブジェクト.CurrentRegion
オブジェクトにはRangeオブジェクトを指定します。
CurrentRegionプロパティは空白のセルで囲まれた範囲を読み取り、参照します。
CurrentRegionプロパティ指定したセルを含む、表全体を参照します。 このとき選択されるセル範囲を「アクティブセル領域」といいます。
書式 オブジェクト.CurrentRegion
オブジェクトにはRangeオブジェクトを指定します。
以下の表のA3セルのあるアクティブセル領域を選択するには、
Sub 表の選択() Range("A3").CurrentRegion.Select End Sub
コードを実行すると、A3セルのあるアクティブセル領域が選択されます。
指定したセルのある表全体を簡単に削除するには、
表のどこでもいいので、どれかセルを指定してやればCurrentRegionプロパティが表全体を選択してくれるので、あとは内容を削除するだけです。
値・数式・書式・コメントのすべてを削除する時は、Clearメソッドを使います。
値・数式・書式・コメントのすべてを削除する時は、Clearメソッドを使います。
サンプルの表を削除するコードは次のように記述します。
Sub 表の削除() Range("A3").CurrentRegion.Clear End Sub
コードを実行すると
A3セルのある表領域が書式を含めて削除されます。
A3セルのある表領域が書式を含めて削除されます。
表の値と数式をクリアしたい時は、
Sub 表の削除2() Range("A3").CurrentRegion.ClearContents End Sub表の書式のみクリアしたい時は、
Sub 表の削除3() Range("A3").CurrentRegion.ClearFormats End Sub表のコメントのみクリアしたい時は、
Sub 表の削除4() Range("A3").CurrentRegion.ClearComments End Subのように、使うことができます。
Selectionで汎用的に書式も含めて表を削除するマクロ
Selectionを使うと、コードを書き換えずに、汎用的にサンプルの表を削除するマクロが使えます。コードは次のように記述します。
今日の講義は以上です。お疲れ様でした。
Sub 表の削除汎用() Selection.CurrentRegion.Clear End Sub
今日の講義は以上です。お疲れ様でした。