top of page

​タグ一覧

配列処理(76)

シート・セル操作(34)

階層化フォーム(33)

ファイル操作(31)

開発事例(26)

図形操作(24)

設計思想(14)

講座実施報告(12)

ユーザーフォーム(10)

開発効率化(10)

コード自動生成(10)

数学(9)

ココナラ(9)

文字列操作(8)

イベントプロシージャ(7)

GAS(7)

Webアプリ(6)

その他(5)

アニメーション(5)

副業(5)

Googleスプレッドシート(4)

OneDrive(4)

技術解説(4)

条件付き書式(4)

イミディエイトウィンドウ(4)

クリップボード(4)

介護・福祉(4)

小説(3)

JavaScript(3)

HTML(3)

公開ツール(3)

クラスモジュール(2)

コード解説(2)

パズル(2)

小ネタ(2)

日報(2)

フリーランス(2)

シフト表(2)

Antigravity(2)

PDF(2)

カレンダー(2)

Enum(2)

LookerStudio(2)

リスキリング(2)

Discord(2)

Outlook(2)

デスクトップアプリ(2)

スクレイピング(1)

WebAPI(1)

PowerShell(1)

文書作成(1)

スプレッドシート(1)

経理(1)

超勉強会(1)

溶接ロボット(1)

楽天市場(1)

VBA不使用(1)

実行予約(1)

CAD(1)

給与計算(1)

QRコード(1)

医療(1)

python(1)

学校(1)

発注書(1)

二次元配列から複数の指定列から抽出して別の二次元配列を作成する(Excel VBA)

2025年1月8日
読了時間: 2分

<概要>

 今回は二次元配列から複数の指定列から抽出して別の二次元配列を作成する汎用プロシージャの紹介です。


 前回紹介した汎用プロシージャ「ExtractColArray2D」では指定した1つの列を一次元配列として取得する処理でしたが、今回紹介する汎用プロシージャ「ExtractColsArray2D」では、「Col」が複数形になっていることからも分かる通り、二次元配列において抽出する列を複数指定して、それらの列を結合して二次元配列を作成するような処理となります。

  

 複数の列指定では。可変長引数配列「ParamArray」を利用しています。ワークシート関数のSUM関数のように複数のセル範囲を指定することができるように、可変長引数配列を利用すれば複数の引数を入力できるようなプロシージャが構築できます。このような実装の例としても一つ参考としてみてください。

 

 では実際の処理を見て行きましょう。


<実行例>

 実行例のサンプルコードは次の通りです

 上記コードで配列の中身の確認には以前に紹介したDPAを利用しています。


 シート上の値は次のようになっています。


 実行結果(イミディエイトウィンドウ)は次のようになります。

 元の二次元配列の1列目と3列目と5列目が抽出されているのがわかります。


<関連記事>

 今回紹介しているような汎用プロシージャを部品として一元管理する方法は別記事で紹介していますので、是非このノウハウも参考にしてみてください。

 コーディングを効率化する上でどんどん増やしていった汎用プロシージャ(部品)をいくら増やしても簡単に流用ができるような仕組みの構築が可能になります。


<コード>


Excel VBAによる業務自動化・ツール開発をご検討の方へ

​"脱Excel"の前に、現状のExcelの潜在能力を120%発揮してみませんか?

softex-celwareロゴ 透過 横長.png

​インボイス登録番号:T5810983887134

  • Facebook
  • Twitter
  • YouTube

©2023 softex-celware。Wix.com で作成されました。

bottom of page