

Excelの表から「複数列の掛け算・足し算」をしたいとき、VBAでループを組むのは面倒です。
そこで便利なのが INDEX
× Evaluate
。
INDEX
× Evaluate
。ワークシート関数をVBAに取り込んで、複数列を一気に演算できます。

以下をサンプルデータとします。

Sub Sample()
Dim arr As Variant
' 数量列(B2:B11) × 単価列(C2:C11)
arr = Application.Evaluate("INDEX(B2:C11,,1) * INDEX(B2:C11,,2)")
' 配列の中身を見てみる
Dim i As Integer
For i = LBound(arr, 1) To UBound(arr, 1)
Range("F2").Cells(i, 0).Value = arr(i, 1)
Next i
End Sub


INDEX(範囲,0,列)
で列まるごと配列を取り出せる!



コメントを残す