今回は、セルのクリア方法を紹介していきます。

VBAで、セルの値やシートの値を削除するなど使用頻度は高いので、是非参考にしてみてください。

セルの値をクリア

セルの値をクリアするといっても、いくつか種類があるので、紹介していきます。

Cells(1, 1).Clear           'すべて
Cells(1, 1).ClearContents   '値
Cells(1, 1).ClearFormats    '書式
Cells(1, 1).ClearComments   'コメント
Cells(1, 1).ClearNotes      'コメント
Cells(1, 1).ClearOutline    'アウトライン
Cells(1, 1).ClearHyperlinks 'ハイパーリンク

このようにたくさんあるのですが、よく使うのは上3つだと思います。

Clear
ClearContents
ClearFormats

この三つの動きを見ていきましょう。

 

エクセルに下記の画像のような入をしました。

各クリア処理の結果を見てみましょう。

VBAソースコード

Private Sub btnClear_Click()
    Cells(2, 2).Clear           'すべて
    Cells(3, 2).ClearContents   '値
    Cells(4, 2).ClearFormats    '書式
End Sub

結果

解説

セル(B2)は、「Clear」メソッドなので、すべて削除されており、初期状態になっています。

セル(B3)は、「ClearContents」メソッドです。値のみ削除されており、罫線や背景色は保持しています。

セル(B4)は、「ClearFormats」メソッドです。書式が削除されているので、値のみ保持しています。罫線や背景色は削除されてます。

 

このように、Clearメソッドを使用することで、セルの削除を行うことができます。

 

範囲削除

さきほどは、一つのセルに対して削除を行いましたが、Rangeメソッドを使用して、範囲削除をしてみましょう。

Rangeについては、こちらの記事を参考にしてみてください。

それでは、見ていきましょう。

先ほどと同じようにエクセルを記入しました。

Rangeで範囲を指定して削除しましょう。

Private Sub btnClear_Click()
    Range(Cells(2, 2), Cells(4, 2)).Clear
End Sub

結果

セル(B2:B4)がすべて削除されました。

このように、Clearメソッドは一つのセルに対してのみではなく、範囲を指定して削除することができます。

 

まとめ

VBAで、EXCELのセルを初期化するときは、「Clear」メソッドを使用しましょう。

「Clear」メソッドは、一つのセルに対してのみではなく、範囲を指定して使用することもできます。

別シートのセルや、列単位、行単位の削除も可能ですので、ぜひ利用してみてください。

 

EXCEL VBAの記事一覧

おすすめの記事