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

VBA 行をクリアする

はじめに

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

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

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

行をクリアする

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

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

Rows の引数に行番号を指定すると、その行をクリアできます。

行「2」をクリアするにはRows(2).Clearを入力します。


Rows(2).Clear
1

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

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


Range("A1").EntireRow.Clear

行の範囲をクリアする

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


Range("2:3").Clear ' 2 ~ 3 行目をクリア
Range("4:4").Clear ' 4 行目をクリア
2

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


Cells.Clear

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

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

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

sheet1

' Sheet1 の行をクリア
Worksheets("Sheet1").Rows(1).Clear
Worksheets(1).Rows(1).Clear

' Sheet2 の行をクリア
Worksheets("Sheet2").Rows(1).Clear
Worksheets(2).Rows(1).Clear

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


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

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


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