Categories: VBA基礎

EXCEL VBA Clear ClearContents ClearFormats(セルの値・書式のクリア)

EXCEL VBA Clear ClearContents ClearFormats(セルの値・書式のクリア)

 

●はじめに
ここでは、セルの値やセルの書式などを消す方法を説明いたします。実際に表のデータを入力する前に値をクリアしたり、プログラムで作成した表を再度、表を作成する前に削除するなど、さまざまな利用方法があります。また、選択範囲を絞って削除したり、特定の場所を指定して削除する事もできます。

 

Range Clearメゾット

 

●セルをクリアする場合4つのパターンがあります。下表に纏めましたので参考にして下さい。

書式意味使用例(Range)使用例(Cells)
Clearセルの内容を全て削除Range("A1").Clearcells(1,"A").Clear
ClearContentsセルの値のみ削除Range("A1").ClearContentscells(1,"A").ClearContents
ClearFormatsセルの書式のみ削除Range("A1").ClearFormatscells(1,"A").ClearFormats
ClearCommentsセルのコメントのみ削除Range("A1").ClearCommentscells(1,"A").ClearComments

 

Clearメゾット

 

●下記のサンプルプログラムは、セルの値・書式・コメント全て削除する例です。

Sub clear01()
    
    'セルの内容を全て削除 Clear
    
    Range("A1").Clear             ' セルA1の値と書式を削除
    Range("B1:C10").Clear         ' セル範囲B1~C101の値と書式を削除
    Range("E1,E3:E4,E6,E8:E10").Clear '複数セルの範囲の値と書式を削除

End Sub

 

●実行結果
実行後、Clearで実行しましたので、指定した範囲全て削除されました。

 

●実行前 ※下表が表示されています。この全て表を削除します。(クリックして拡大)

 

●実行後 ※指定した全てのセルが削除されました。(クリックして拡大)

 

 

ClearContentsメゾット

 

●プログラム説明
下記のサンプルプログラムは、セルの値のみを削除する例です。

 

Sub clear02()
    
    'セルの値を削除 ClearContents
    
    Range("A1").ClearContents             ' セルA1の値を削除
    Range("B1:C10").ClearContents        ' セル範囲B1~C10の値を削除
    Range("E1,E3:E4,E6,E8:E10").ClearContents '複数セルの範囲の値を削除

End Sub

 

●実行結果
実行後、ClearContentsで実行しましたので、指定した範囲の値のみ削除されました。

 

●実行前 ※下表が表示されています。この表の値のみ削除します。(クリックして拡大)

 

●実行後 ※指定した表の値のみ削除されました。(クリックして拡大)

 

ClearFormatsメゾット

 

●プログラム説明
下記のサンプルプログラムは、セルの書式を削除する例です。A列は、日付の書式をクリアー・B列は、円単位をクリアーにします。

 

Sub clear03()

    'セルの書式を削除ClearFormats
    
    Range("A2:A10").ClearFormats      ' セル範囲A2~A10の書式のみ消去(年月日)
    Range("B2:B10").ClearFormats      ' セル範囲B2~B10の書式のみ消去(¥)

End Sub
●実行結果
実行後、ClearFormatsを実行しましたので、指定した範囲の書式のみ削除されました。

 

●実行前 ※A列には、日付の書式が設定・B列は通貨の書式が設定されています。(クリックして拡大)

 

●実行後 ※A列・B列ともに、書式の設定が解除されました。(標準の表示形式になります)(クリックして拡大)

 

 

ClearCommentsメゾット

 

●プログラム説明
下記のサンプルプログラムは、セルのコメントを削除する例です。

 

Sub clear04()

    'セルのコメントを削除ClearComments
    
    Range("B4:B12").ClearComments     ' セル範囲B4~B12のコメントのみ消去


End Sub
●実行結果
実行後、ClearCommentsを実行しましたので、指定した範囲のコメントのみ削除されました。

 

●実行前 ※B4~B14のセルにコメントが設定されています。(クリックして拡大)

 

●実行後 ※B4~B14のセルに設定されているコメントがクリアー(削除)されました。(クリックして拡大)

 

最後まで、ご覧いただきまして誠に有難うございました。
以上で、EXCEL VBA Clear・ClearContents・ClearFormats・ClearCommentsの使い方の説明でした。セルの値・書式・コメントなど条件により分けて処理する事も出来ますので、使い分けて利用して下さい。
また、VBAに関するテクニックや便利な手法などをこのサイトに掲載していきますので、定期的に参照していただけると幸いです。

 

AKIRA