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

2019/12/03

プログラム

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

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

  1. Sub sample22()
  2. Dim M As Long, N As Long, Q As Long, R As Long, S As Long
  3. MM = Range(Cells(1, 13), Cells(MR, 13))
  4. NN = Range(Cells(1, 14), Cells(MR, 14))
  5. QQ = Range(Cells(1, 17), Cells(MR, 17))
  6. RR = Range(Cells(1, 18), Cells(MR, 18))
  7. SS = Range(Cells(1, 19), Cells(MR, 19))
  8. TT = Range(Cells(1, 20), Cells(MR, 20))
  9. UU = Range(Cells(1, 21), Cells(MR, 21))
  10. On Error Resume Next 'ω'#N/A無視
  11. For i = 2 To MR
  12. M = MM(i, 1)
  13. N = NN(i, 1)
  14. Q = QQ(i, 1)
  15. RR(i, 1) = M - Q
  16. R = RR(i, 1)
  17. S = SS(i, 1)
  18. TT(i, 1) = R + S
  19. UU(i, 1) = M + S - N
  20. Next i
  21. On Error GoTo 0 'ω'#N/A無視解除
  22. Range(Cells(1, 18), Cells(MR, 18)) = RR
  23. Range(Cells(1, 20), Cells(MR, 20)) = TT
  24. Range(Cells(1, 21), Cells(MR, 21)) = UU
  25. 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