一次元配列を並び替えを行った時の順位を一次元配列として返す(Excel VBA)
- yuji fukami
- 2月11日
- 読了時間: 2分
<概要>
今回紹介する 「GetRankArray1D」 は、 一次元配列の要素を並び替えた際の順位を求めて、新たな一次元配列として返す 汎用プロシージャです。
通常、データの順位を求める際には、配列を並び替えた上で、元のインデックスを保持しながら順位を計算する必要がありますが、このプロシージャを使うことで 一行のコードで簡単に順位を取得 できます。
実際に役立つ場面
このプロシージャは、以下のようなケースで活用できます。
ランキング計算:例えば、売上データや成績データを並び替え、それぞれの 順位を求める 場面。
スポーツや競技結果の順位付け:スコアの並び替えによる順位決定。
データの可視化:順位を基にグラフなどを作成する際に 順位情報を取得 する処理。
このように、データ分析や順位を求めるシステムの開発時に コードを簡潔にし、処理を効率化できる 便利なプロシージャです。
<実行例>
実行例のサンプルコードは次の通りです
イミディエイトウィンドウでの実行結果は次のようになります。

<関連コード>
今回の汎用プロシージャは、下記の別で紹介している汎用プロシージャを使用しています。
・IsArray1D → https://www.softex-celware.com/post/isarray1d
・IsArray1DStart1 → https://www.softex-celware.com/post/isarray1d
・DimArray1DNumbers → https://www.softex-celware.com/post/dimarray1dnumbers
・UnionArray1D_LR → https://www.softex-celware.com/post/unionarray1d_lr
・SortArray2D_WS → https://www.softex-celware.com/post/sortarray2d_ws
・IsArray2D → https://www.softex-celware.com/post/isarray1d
・IsArray2DStart1 → https://www.softex-celware.com/post/isarray1d
・ExtractColArray2D → https://www.softex-celware.com/post/extractcolarray2d
<関連記事>
今回紹介しているような汎用プロシージャを部品として一元管理する方法は別記事で紹介していますので、是非このノウハウも参考にしてみてください。
コーディングを効率化する上でどんどん増やしていった汎用プロシージャ(部品)をいくら増やしても簡単に流用ができるような仕組みの構築が可能になります。
<コード>
一次元配列を並び替えを行った時の順位を一次元配列として返す(Excel VBA)
Comentários