サンプル画像
Excelマクロ塾メニュー

エクセルマクロ・VBAは慣れが肝心
最初は難しく感じるExcelのマクロとVBAですが、仕組みが理解できると徐々に使いこなせるようになってきます!
自分のペースで着実に勉強しましょう!

エクセルマクロ塾
エクセルマクロ塾

指定したセルの値の削除

エクセルで指定した欄のみを削除するプログラムを作成しましょう。

削除する行数が決まっている場合、前々回に説明したFor ~ Nextステートメントを使うとわかりやすくできます。

 

全体の流れを簡単に表すと

 

①マクロを開始して、変数の設定を行う。(変数名をつけて変数の型を選択)

 

②セルのどこからどこまでに繰り返し処理を行うか決める。(For ~ Nextを使います。)

 

③変数の値に対応した位置にあるセルを削除する。

 

④For ~ Nextを終了する。

 

excelマクロ VBA

上の図の合計欄(C2~C6)の値を削除します。

 

エクセルマクロ VBA

マクロを実行するとセルC2~C6の値が削除されました。

 

全体の流れはこのようになります。では1つずつ作りながら説明していきます。

 

変数を定義する

VBEを起動しプログラムを入力していきます。

「sub 合計値クリア」と入力し、マクロを開始します。



①変数の定義

 

Sub 合計値クリア( )

  dim

End Sub

 

*解説

Sub 合計値クリアの下にインデントを設定します。Tabキーを押しましょう。

Dimと入力してその後に半角スペースを入力します。Dimステートメントでは変数名とデータの形を明示するので、この続きには[ 変数名 ] As [ 形 ] を続けて書くことになります。


②変数名と変数の型を入力

 

Sub 合計値クリア( )

  dim セル番号 as integer

End Sub

 

*解説

dimの後に 「セル番号 as integer」と入力

変数 [セル番号] を整数型に定義します。


③For ~ Nextステートメント入力

 

Sub 合計値クリア( )

  Dim セル番号 As Integer

  For セル番号 = 2 To 6 ← 2から6行目まで削除するので「2 To 6」

End Sub

 

*解説

改行をして「For セル番号 = 2 To 6」と入力

変数「セル番号」の値の2から6まで同じ処理を繰り返します。


④セルの設定

 

Sub 合計値クリア( )

  Dim セル番号 As Integer

  For セル番号 = 2 To 6

     cells(セル番号,3).clearcontents

End Sub

 

*解説

インデントを設定し、cellsと入力する。

変数名と列の番号を( )内に入力する。間は「 , 」で区切る。 

(列番号はAから1 Bは2 Cは3・・・と続く)

最後にclearcontentsと入力する。これは「~の文字と数式を削除する」という意味のソメッドである。


⑤For ~ Nextステートメントを終了

 

Sub 合計値クリア

  Dim セル番号 As Integer

  For セル番号 = 2 To 6

    Cells(セル番号, 3).Clearcontents

  Next セル番号

End Sub

 

*解説

Next セル番号と入力する。

変数「セル番号」のカウンタを1つ増やして繰り返し処理を行います。

入力が終了したら、End Subの下をクリックします。


⑥作成したマクロを保存・確認・実行

 

*解説

ファイルのタブからマクロを保存します。

エクセルに切り替え、マクロのダイアログボックスを表示します。

(ツール⇒マクロ⇒マクロ)

「合計値クリア」を選び、マクロを実行します。

マクロの実行結果を確認し、合計の欄C2~C6に入力された値が削除されているかを確認します。

VBA