ReplaceValue1D|一次元配列の各要素に対して文字列の置換処理を一括で行う|Excel VBA
- yuji fukami
- 11 時間前
- 読了時間: 2分

<概要 (置換)>
ReplaceValue1D は、一次元配列の各要素に対して文字列の置換処理を一括で行う汎用プロシージャです。
部分一致/完全一致の切り替えや、全角半角を区別するかどうかをオプション引数で指定できるため、CSV取込後のデータ補正や配列ベースの前処理など、実務で頻出する場面に柔軟に対応できます。
また、一次元配列であること、開始インデックスが 1 であることを事前にチェックする補助関数を利用しており、想定外の配列構造による不具合を防ぐ設計になっています。
<実行例>
実行例のサンプルコードは次の通りです
実行結果のイミディエイトウィンドウは次のようになります。

実行結果では、配列内の「大阪_支社」「名古屋_支社」がそれぞれ「大阪_営業所」「名古屋_営業所」に置き換わっていることが確認できます。
部分一致モードを使用しているため、文字列の一部に指定した検索文字が含まれていれば置換が行われます。全角半角を区別しない設定のため、表記ゆれがあるデータでも同一条件で処理できます。
<関連コード>
今回の汎用プロシージャは、下記の別で紹介している汎用プロシージャを使用しています。
・IsArray1D → https://www.softex-celware.com/post/isarray1d
・IsArray1DStart1 → https://www.softex-celware.com/post/isarray1d
<関連記事>
今回紹介しているような汎用プロシージャを部品として一元管理する方法は別記事で紹介していますので、是非このノウハウも参考にしてみてください。
コーディングを効率化する上でどんどん増やしていった汎用プロシージャ(部品)をいくら増やしても簡単に流用ができるような仕組みの構築が可能になります。



コメント