Excel-VBA 配列を使って列の値を足し算・引き算するマクロ

2019/12/03

プログラム

t f B! P L
Excel VBAマクロ。今回は
配列を使って列の値を足し算・引き算するマクロ
を示す。

■Excel-VBA 配列を使って列の値を足し算・引き算するマクロ

Sub sample22()
Dim M As Long, N As Long, Q As Long, R As Long, S As Long
    MM = Range(Cells(1, 13), Cells(MR, 13))
    NN = Range(Cells(1, 14), Cells(MR, 14))
    QQ = Range(Cells(1, 17), Cells(MR, 17))
    RR = Range(Cells(1, 18), Cells(MR, 18))
    SS = Range(Cells(1, 19), Cells(MR, 19))
    TT = Range(Cells(1, 20), Cells(MR, 20))
    UU = Range(Cells(1, 21), Cells(MR, 21))
    On Error Resume Next 'ω'#N/A無視
    For i = 2 To MR
        M = MM(i, 1)
        N = NN(i, 1)
        Q = QQ(i, 1)
        RR(i, 1) = M - Q
        R = RR(i, 1)
        S = SS(i, 1)
        TT(i, 1) = R + S
        UU(i, 1) = M + S - N
    Next i
    On Error GoTo 0 'ω'#N/A無視解除
    Range(Cells(1, 18), Cells(MR, 18)) = RR
    Range(Cells(1, 20), Cells(MR, 20)) = TT
    Range(Cells(1, 21), Cells(MR, 21)) = UU
End Sub
※[2.] 変数宣言。
※[3.~9.] 配列に13列目(M列)…21列目(U列)の値を格納。
※[10.] 計算結果で「#N/A」エラーがでても無視する。
※[11.~20.] 配列の値を変数に入れて足し算・引き算。
計算後の値を配列に格納。
最終行までFor Nextループ。
※[21.] 「#N/A」エラー無視解除。
※[22.~24.] 配列の値を18列目(R列)、
20列目(T列)、21列目(U列)セルに格納。

■あとがき

Excel VBAマクロ。
配列を使って列の値を足し算・引き算するマクロ
を示した。

Forループでセルに逐次値を代入するより
配列使用計算したものをループ完了後まとめて
セルに格納した方がシートへのアクセス回数が
少ないので処理時間はやい。
以上。

ブログ アーカイブ

ラベル

このブログを検索

スポンサーリンク

自己紹介

機械メーカー総合職正社員10年勤務後退職。 エクセルVBAプログラム歴 5年。 LibreOffice(無料)でVBAマクロ検証。
■Fortniteクエスト攻略動画■
■Twitter■
⇒詳細プロフィールを表示

QooQ