教えて!ExcelVBA!

ExcelVBAの基礎知識・書き方について説明していきます。

【ExcelVBA プログラミング】(クリア3)セル範囲指定によるクリア処理(変数を使用したセル指定範囲クリア)

       f:id:m_kbou:20200421080347p:plain

変数を使用したセル範囲をクリアする方法について説明します。今回はセル値の行を変数で指定してセル範囲をクリアします。

 

【目次】

 

例題

例題は、<実行>ボタンにVBAマクロが登録されており、ボタンをクリックする事で指定した範囲のセルデータをクリアします。クリアする範囲はA3セル~A7セルとし、セル値の行を変数で指定します。

[実行前]:

f:id:m_kbou:20200317073610p:plain

[実行後]:

・A3セル~A7セル範囲がクリアされる。

f:id:m_kbou:20200317073620p:plain

 

プログラミング

プログラミングは以下の通りとなります。

[記述例]:

※以下の記述例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方については、VBEの開き方を参考にして下さい。また、ボタンにプログラム内容を割り当てるには、VBAをボタンに割り当てるを参考にして下さい。

-------------------------------------------------

Sub サンプル()

    Dim 行1 As Double
    Dim 行2 As Double
   
    行1 = 3
    行2 = 7
   
    Range("A" & 行1 & ":A" & 行2).ClearContents
   
End Sub

-------------------------------------------------

今回の例題では、指定した範囲のセルデータをクリアするため、ClearContentsメソッドを使用します。

セル値の行を変数で指定するため、変数:行1及び行2を指定します。

クリアする行範囲が3行目~7行目となるため、変数:行1には3を指定し、変数:行2には7を指定します。

文字列と変数を繋げる場合は、文字列を「”」(ダブルクォーテーション)で囲み、指定した変数との間に「&」(アンパサンド)と記述して繋げます。また、クリアする範囲を指定する場合は、範囲の開始セルと終了セルを「:」(コロン)で繋げます。

結果、A3セル~A7セルをクリアするため、Range("A" & 行1 & ":A" & 行2).ClearContentsを記述します。

処理の内容を説明すると、

「A3セル~A7セルの範囲をクリアします。」

との意味になります。

 

ダウンロード

上記サンプルプログラムを使用したい場合は、こちらからダウンロードして下さい。

1drv.ms

 

関連プログラム

www.osiete-excelvba.work

www.osiete-excelvba.work