■ 最新の投稿

VBA配列を一瞬で生成!Application.Evaluate 活用術~INDEX×Evaluateで複数列をまとめて演算する方法

Excelの表から「複数列の掛け算・足し算」をしたいとき、VBAでループを組むのは面倒です。

そこで便利なのが 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,列) で列まるごと配列を取り出せる!


Comments

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です