更新日:、 作成日:
VBA セルをクリアする (Range.Clear)
はじめに
Excel VBA マクロでセルをクリアする方法を紹介します。
Range("B1").Clear または Cells(1, 2).Clear メソッドから、セル「B1」のすべてを削除できます。
ClearContents メソッドから、値と数式を削除できます。書式などは残ります。
ClearFormats メソッドから、書式 (色や罫線) を削除できます。値や数式は残ります。
セルをクリアする
セルをクリアするメソッドはいくつもあります。クリアする目的にあったものを使用します。
メソッド名 | クリアするもの |
Clear | すべて |
ClearComments | コメント |
ClearContents | 値と数式 |
ClearFormats | 書式 (色や罫線、条件付き書式など) |
ClearNotes | コメント |
ClearOutline | アウトライン |
ClearHyperlinks (Excel 2010 以降) | ハイパーリンク |
Range の引数にセル名を指定すると、そのセルをクリアします。
セル「A1」をクリアするには Range("A1").Clear を入力します。
Range("A1").Clear
Cells の引数にセルの行と列の番号を指定すると、そのセルをクリアします。
行「2」、列「A」をクリアするには Cells(2, 1).Clear を入力します。
Cells(1, 1).Clear ' A1
Cells(2, 1).Clear ' A2
Cells(1, 2).Clear ' B1
Cells(2, 2).Clear ' B2
スポンサーリンク
セルの範囲をクリアする
セルの範囲「A1」~「B2」をクリアするには Range("A1:B2").Clear または Range("A1", "B2").Clear を入力します。
Range("A1:B2").Clear
Range("A1", "B2").Clear
シート全体のセルをクリアするには Cells.Crear を入力します。
Cells.Clear
別シートのセルをクリアする
シートを指定するには Worksheets の引数にシート名またはインデックスを指定します。
Sheet1 を指定するには Worksheets("Sheet1") または Worksheets(1) を入力します。
' Sheet1 のセル「A1」をクリア
Worksheets("Sheet1").Range("A1").Clear
Worksheets(1).Range("A1").Clear
' Sheet2 のセル「A1」をクリア
Worksheets("Sheet2").Range("A1").Clear
Worksheets(2).Range("A1").Clear
Sheet1 に Range や Cells を入力すると、自身のシートのセルになります。自身を表す Me. が省略されています。
' どちらも同じコード
Range("A1").Value = "Sheet1"
Me.Range("A1").Value = "Sheet1"
標準モジュールに Range や Cells を入力すると、開いているシートのセルになります。アクティブシートを表す ActiveSheet. が省略されています。
' どちらも同じコード
Range("A1").Value = "アクティブ"
ActiveSheet.Range("A1").Value = "アクティブ"