サイトについて      連絡先   検索

VBA セルをクリアする

はじめに

Excel VBA マクロのセルをクリアする方法を紹介します。

Range.Clear メソッドか Cells.Clear メソッドでセルをクリアできます。

  • 目次
    • セルをクリアする
    • セルの範囲をクリアする
    • 指定したシートのセルをクリアする

セルをクリアする

セルをクリアするメソッドはいくつもあります。クリアする目的にあったものを使用します。

メソッド名 クリアするもの
Clear全て
ClearCommentsコメント
ClearContents値と数式
ClearFormats書式 (色や罫線、条件付き書式など)
ClearNotesコメント
ClearOutlineアウトライン
ClearHyperlinks
(Excel 2010 以降)
ハイパーリンク

Range の引数にセル名を指定すると、そのセルをクリアします。

セル「A1」をクリアするには Range("A1").Clear のように指定します。


Range("A1").Clear
1

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

指定したシートのセルをクリアする

Range.Clear とコードに書くと、アクティブなシートのセルをクリアします。これは ActiveSheet.Range.Clear の ActiveSheet が省略されています。


' どちらも同じコード
Range("A1").Clear
ActiveSheet.Range("A1").Clear

シートを指定するには Sheets の引数にシート名またはインデックスを指定します。

sheet1

Sheet1 のシートを指定するには、Sheets("Sheet1") か Sheets(1) と書きます。


' Sheet1 のセル「A1」をクリア
Sheets("Sheet1").Range("A1").Clear
Sheets(1).Range("A1").Clear

' Sheet2 のセル「A1」をクリア
Sheets("Sheet2").Range("A1").Clear
Sheets(2).Range("A1").Clear
  • 目次
    • セルをクリアする
    • セルの範囲をクリアする
    • 指定したシートのセルをクリアする