二次元配列の最終行の後ろに1行を拡張し、その拡張した行に Values(可変長引数) で渡した値を左から順番に格納して返す汎用プロシージャ Excel VBA
- yuji fukami
- 7 時間前
- 読了時間: 2分

<概要 (拡張)>
PushValueArray2DRow は、二次元配列の最終行の下に1行を拡張し、その拡張した行に Values(可変長引数) で渡した値を左から順番に格納して返す関数です。配列が Empty の場合は 1行目から新規作成して値を入れます。
内部では、既存の二次元配列に対して ExpandArray2DRow(Array2D, 1) で「行を1つ増やした配列」を作り、増えた最終行へ値を入れる構成になっています。また 2024/11/24 の更新で、値がObjectの場合は Set 代入に切り替えており、オブジェクト要素も保持できます。
<実行例1>
文字列・数値を行追加していく例
実行結果のイミディエイトウィンドウは次のようになります。

<実行例2>
既存配列がある状態で、最後に1行追加されることの確認
実行結果のイミディエイトウィンドウは次のようになります。

<関連コード>
今回の汎用プロシージャは、下記の別で紹介している汎用プロシージャを使用しています。
・IsArray2D → https://www.softex-celware.com/post/isarray1d
・IsArray2DStart1 → https://www.softex-celware.com/post/isarray1d
・ExpandArray2DRow → https://www.softex-celware.com/post/expandarray2drow
<関連記事>
今回紹介しているような汎用プロシージャを部品として一元管理する方法は別記事で紹介していますので、是非このノウハウも参考にしてみてください。
コーディングを効率化する上でどんどん増やしていった汎用プロシージャ(部品)をいくら増やしても簡単に流用ができるような仕組みの構築が可能になります。


コメント