SumArray2D_UD|二次元配列の合計を上下方向(列方向)に計算する | Excel VBA
- yuji fukami
- 5 時間前
- 読了時間: 2分

<概要 (配列の合計)>
SumArray2D_UD は、Excel VBA で扱う二次元配列に対して、配列の合計を上下方向(列方向)に計算し、その結果を一次元配列として返す汎用関数です。
行数が可変なデータや、ワークシートに書き出す前の配列処理において、「列ごとの合計値だけを高速に取得したい」という場面で特に有効です。
内部では、
二次元配列かどうかのチェック
開始インデックスが 1 であるかの検証
を行ってから処理を実行するため、ライブラリ関数としても安全に利用できます。
<実行例>
実行例のサンプルコードは次の通りです
実行結果のイミディエイトウィンドウは次のようになります。

この実行例では、3行×4列の二次元配列を用意し、SumArray2D_UD関数によって行ごとの合計値を取得しています。
結果は一次元配列として返され、「列1の合計」「列2の合計」…という形で、上下方向(列方向)の集計結果のみをシンプルに取得できます。
行数が増減しても処理内容を変更する必要がなく、配列ベースで集計処理を完結させたい場合に有効です。
<関連コード>
今回の汎用プロシージャは、下記の別で紹介している汎用プロシージャを使用しています。
・IsArray2D → https://www.softex-celware.com/post/isarray1d
・IsArray2DStart1 → https://www.softex-celware.com/post/isarray1d
<関連記事>
今回紹介しているような汎用プロシージャを部品として一元管理する方法は別記事で紹介していますので、是非このノウハウも参考にしてみてください。
コーディングを効率化する上でどんどん増やしていった汎用プロシージャ(部品)をいくら増やしても簡単に流用ができるような仕組みの構築が可能になります。


コメント