目次
目的
- セルの文字、数式のみを削除したい。
- 書式は削除したくない。
- セルで「Delete」キーを押すのと同じ事をやりたい。
- 削除範囲を指定したい。
- ClearContents を使用する。
テストしてみました。
題材
題材として、下記のようなワークシートを準備してみました。
今回は、「B1:B2」の「1 , 2」の数字、「B3」の数式を削除してみます。
マクロの一例
下記マクロを作成してみました。
Range プロパティで対象範囲を指定して、ClearContents メソッドで文字、数式を削除してみます。
Sub 文字数式を削除するマクロ()
Range("B1:B3").ClearContents
End Sub
上記マクロを実行してみると、下記画像の結果になりました。
数式の入力欄に削除する前の数式が残っていますが、一旦、別のセルを選択して、再度、「B3」セルを選択すると数式が消えていると思います。
Cells
上記では、 Range プロパティで対象範囲の指定を行いましたが、マクロの中で、動的に対象範囲を指定したい場合は、 Cells プロパティも便利かもしれません。
Cells プロパティは、行番号、列番号で範囲指定が可能なプロパティのようです。
Cells プロパティを使用した、下記マクロを作成してみました。
Sub Cells使用_文字数式を削除するマクロ()
'Range(Cells(行, 列), Cells(行, 列)) の書式
Range(Cells(1, 2), Cells(3, 2)).ClearContents
End Sub
上記マクロを実行すると、以下の結果になりました。
Range プロパティで対象範囲を指定をした時と、同じ結果になっています。
テスト環境
- Windows 10(64 ビット)
- Microsoft Office Excel 2003
以上、閲覧ありがとうございました。