並び替えるといえば、通常は並び替え機能を使用します。たとえば、出荷量で並べ替えるには、出荷量下部にある任意のセルをクリックしてから、昇順または降順で並べ替えます。
しかし、これで倉庫番号の順序が崩されます。
関数を使用して並び替える
RANK.EQ関数を使用して、この問題を解決できます。
RANK.EQ関数には、3つの引数があります。RANK.EQ(数値,参照,[順序])。その中で、数値には順位を調べる数値を指定します。
例では、成田倉庫の出荷量順位を計算するために、数値はセルC2を指定します。
2番目の引数は参照です。参照には数値を含むセル範囲の参照、または配列を指定します。ここでは、すべての倉庫の出荷量を示します。これらの数値を選択します。
最後の引数は順序です。この引数はオプションです。今回は入力しません。これで[OK]ボタンを押すと、東京倉庫の出荷量の順位が表示されます。
このセルをクリックし、セルの右下隅にカーソルを移動し、下にドラックして、他の倉庫の順位を求めます。
ただし、計算結果では、2、3、4が何回出ました。
これは、この数式を下にオートフィルする時、最初の引数も下のセルに移動します。数式が最後のセルまでドラックすると、参照範囲のセルも1つずつ下に移動します。最後のセルにドラックする場合、実際、0と比較になりました。これも最後のセルの数値は一番大きいではなくても、順位が1となる原因です。
そのため、順位を求める場合は、必ず参照範囲を絶対参照に設定しなければなりません。
絶対参照では、$記号を使用して、相対参照を絶対参照に変更します。 セルD2をクリックし、編集バーで元の数式の2番目の引数(参照範囲)を選択し、F4キーを押すと、絶対参照にすばやく変更できます。
Ctrl+Enterキーを押して、今のセルを確認してこのセルに留まります。
カーソルをセルの右下隅に移動して下にドラッグすると、正しい順位が表示されます。2番目の数値が2つがある場合には、順位は両方も2を表示し、3番目の順位をスキップして、後続の4番目の順位から表示します。
並び替えに関する順序の問題
各倉庫の出荷効率の順位を求めるには、セルを選択し、数式=RANK.EQを入力し、最初の引数を選択し、英字のコンマを入力します。2番目の引数を選択し、F4を押して参照範囲を絶対参照に変更します。また、Ctrl+Enterキーを押し、最後までドラックして各セルの順位が表示されます。
ここにもう1つの問題があります。時間が短い倉庫は効率が高いはずなのに、順位が後ろになってしましました。
このとき、3番目のオプション引数を使用します。この引数が省略または0で入力する場合、デフォルトで降順で並べ替えられます。この引数を1に変更すると、昇順で並べ替えられます。また、数式を下に適用して、予想通りの正しい順位が表示されます。
RANKとRANK.AVG関数
RANK.EQを入力する場合、周りにRANK関数とRANK.AVG関数があり、これら2つの関数の使い方はRANK.EQとまったく同じです。
RANKは以前のバージョンにある並び替え関数です。
RANK.AVG関数の場合、同じ値のときは平均値の順位を返します。
たとえば、この2つの数値の順位は2と3で、平均値は2.5です。
コメントを残す