教えて!ExcelVBA!

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

【ExcelVBA 演算子】引き算をするにはどうすればいいの?教えて!

構文

構文は以下の通りです。

変数名 = 式1 - 式2

解説

引き算には「-」演算子を使います。引き算を行う場合は、引かれる数と引く数を「-」演算子で繋いで式を作成します。式の結果を変数に代入する場合は、代入先の変数名の前に「=」をつけます。

使い方

具体的な使い方を紹介します。

1.引き算の結果を変数に代入する場合

変数に引き算の結果を代入する場合は、以下のようにします。

Sub 引き算の結果を変数に代入する()
    Dim a As Integer
    Dim b As Integer
    Dim c As Integer
    a = 10
    b = 5
    c = a - b
    Debug.Print c
End Sub

この場合、変数aには10、変数bには5が代入され、変数cにはa-bの結果である5が代入されます。Debug.Print文で変数cの値が出力されます。

2.引き算の結果を直接出力する場合

引き算の結果を直接出力する場合は、以下のようにします。

Sub 引き算の結果を直接出力する()
    Dim a As Integer
    Dim b As Integer
    a = 10
    b = 5
    Debug.Print a - b
End Sub

この場合、変数aには10、変数bには5が代入され、a-bの結果である5が直接Debug.Print文で出力されます。

プログラミング例

引き算のプログラミング例を2つ用意しました。一つ目は、Excelのセルに入力された数値を引き算して、結果をメッセージボックスに表示するプログラムです。二つ目は、引き算を行いながらループ処理を行うプログラムです。

1.セルに入力された数値の引き算結果をメッセージボックスで表示するプログラム

Sub セルに入力された数値の引き算()
    Dim a As Integer
    Dim b As Integer
    Dim result As Integer
    a = Range("A1").Value
    b = Range("B1").Value
    result = a - b
    MsgBox "引き算の結果は" & result & "です。"
End Sub

このプログラムでは、セルA1とB1に入力された数値を変数aとbに代入し、a-bの結果を変数resultに代入します。そして、MsgBox文を使って「引き算の結果は〇〇です。」というメッセージを表示します。〇〇の部分には、変数resultの値が入ります。

2.引き算を行いながらループ処理を行うプログラム

Sub 引き算とループ処理()
    Dim a As Integer
    Dim b As Integer
    Dim result As Integer
    Dim i As Integer
    a = 10
    b = 3
    result = a - b
    For i = 1 To result
        Debug.Print "残り" & result - i & "回"
    Next i
End Sub

このプログラムでは、変数aに10、変数bに3を代入し、a-bの結果である7を変数resultに代入します。そして、For文を使って、「残り〇〇回」というメッセージを7回表示します。このプログラムを実行すると、デバッグウインドウに「残り6回」「残り5回」・・・「残り1回」と表示されます。

まとめ

ExcelVBAを使った数値計算には、引き算の他にも様々な演算子がありますが、基本的な考え方は同じです。まず計算する値を指定し、それらを組み合わせて計算式を記述し、最後に計算結果を表示するという手順を踏むことが重要です。ExcelVBAを使った数値計算をマスターして、効率的な業務処理や分析に活用しましょう。