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

VBA 列をクリアする

はじめに

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

Columns.Clear メソッドまたは Range.Clear メソッドで列をクリアできます。

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

列をクリアする

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

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

Columns の引数に列番号や列名を指定すると、その列をクリアできます。

列「B」をクリアするにはColumns(2).ClearまたはColumns("B").Clearを入力します。


Columns(2).Clear
Columns("B").Clear
1

Range の引数にセル名を指定すると、そのセルを取得できます。EntireColumn からその列を取得できます。

セル「A1」の列をクリアするにはRange("A1").EntireColumn.Clearを入力します。


Range("A1").EntireColumn.Clear

列の範囲をクリアする

列の範囲「B ~ C」をクリアするにはRange("B:C").ClearまたはRange(Columns(2), Columns(3)).Clearを入力します。


Range("B:C").Clear                  ' B ~ C 列をクリア
Range(Columns(2), Columns(3)).Clear ' B ~ C 列をクリア
Range("D:D").Clear                  ' D 列をクリア
2

すべてのセルをクリアするにはCells.Crearを入力します。


Cells.Clear

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

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

Sheet1 を指定するにはWorksheets("Sheet1")またはWorksheets(1)を入力します。

sheet1

' Sheet1 の列をクリア
Worksheets("Sheet1").Columns(1).Clear
Worksheets(1).Columns(1).Clear

' Sheet2 の列をクリア
Worksheets("Sheet2").Columns(1).Clear
Worksheets(2).Columns(1).Clear

Sheet1 に Columns を入力すると、自身のシートの列になります。自身を表すMe.が省略されています。


' どちらも同じコード
Dim r As Range
Set r = Columns(1)
Set r = Me.Columns(1)

標準モジュールに Columns を入力すると、アクティブなシートの列になります。アクティブシートを表すActiveSheet.が省略されています。


' どちらも同じコード
Dim r As Range
Set r = Columns(1)
Set r = ActiveSheet.Columns(1)
  • 目次
    • 列をクリアする
    • 列の範囲をクリアする
    • 指定したシートの列をクリアする