2つの一次元配列を受け取り、同じ添字どうしの要素を乗算した結果を一次元配列で返す汎用プロシージャ Excel VBA
- yuji fukami
- 1 日前
- 読了時間: 2分

<概要 (乗算)>
MultArray1D は、2つの一次元配列を受け取り、同じ添字どうしの要素を乗算した結果を一次元配列で返す関数です。たとえば [1,2,3] と [10,20,30] を渡すと、戻り値は [10,40,90] になります。
配列は 一次元配列 であること
開始添字は 1始まり であること
2つの配列の 要素数(UBound)が一致していること
各要素は 両方とも数値のときだけ乗算し、数値でない場合は空欄(未代入)扱い
…という前提を守ることで、「配列同士の要素演算」を安全に簡単に行えます。
<実行例>
実行例のサンプルコードは次の通りです
実行結果のイミディエイトウィンドウは次のようになります。

このサンプルでは、一次元配列AとBを用意し、同じ添字どうしの要素を乗算して配列Cを作成しています。
出力を見ると、C(1)=1*10=10、C(2)=2*20=40…のように、A(i)×B(i) の結果がそのままCに入っていることが確認できます。
<関連コード>
今回の汎用プロシージャは、下記の別で紹介している汎用プロシージャを使用しています。
・IsArray1D → https://www.softex-celware.com/post/isarray1d
・IsArray1DStart1 → https://www.softex-celware.com/post/isarray1d
<関連記事>
今回紹介しているような汎用プロシージャを部品として一元管理する方法は別記事で紹介していますので、是非このノウハウも参考にしてみてください。
コーディングを効率化する上でどんどん増やしていった汎用プロシージャ(部品)をいくら増やしても簡単に流用ができるような仕組みの構築が可能になります。



コメント