Excelで文字列中の数値で並び替えする方法を紹介!

Excelで文字列中の数値で並び替えする方法を紹介!

Microsoft Excelを使用していて、文字列中の数値で並び替えしたいと思ったことはありませんか?文字列内の対象の数値を引っ張り出してから順位付けを行い、整列可能ですよ。この記事では、Excelで文字列中の数値で並び替えする方法をご紹介していきます。


目次[非表示]

  1. Excelで文字列中の数値で並び替えする方法

Excelで文字列中の数値で並び替えする方法

Microsoft Excelを使用していて、文字列中の数値で並び替えしたいと思ったことはありませんか?例えば「RX-78-2」・「RX-93」・「RX-105」といった形で文字列の中にある数値を使用して並び替えを行いたいというシーンもあるかと思います。

文字列内の数値で並び替えを行いたい場合は、対象の数値を引っ張り出してから順位付けを行い整列させるといった方法が有効です。この記事では、Excelで文字列中の数値で並び替えする方法をご紹介していきます。

D2セルに「=LEFT(B2,2)*1000+RIGHT(B2,3)」と入力
それでは、Excelで文字列中の数値で並び替えする方法を説明していきます。画像の例ではB列の型番が数字でアルファベットを挟む形になっていますよね。ですので、数字を「LEFT関数」と「RIGHT関数」を使用して取り出します。D2セルに「=LEFT(B2,2)*1000+RIGHT(B2,3)」と入力して、左の数字を1000倍してから右の数字と足した結果を出力します。
オートフィルを使用して残りのセルに反映
あとはオートフィルを使用して、残りのセルに反映します。
E2セルに「=RANK(D2,$D$2:$D$7,1)」と入力
続いて、出力した数字を元にして順番を求めていきます。順番を求めるには、「RANK関数」を使用します。E2セルに「=RANK(D2,$D$2:$D$7,1)」と入力して、順位を求めていきます。
オートフィルを行って残りのセルに適用
こちらで出力した結果もオートフィルを行い、残りのセルに適用して全体の順位を求めます。
C2セルに「=INDEX($B$2:$B$7,MATCH(ROW(B1),$E$2:$E$7,0))」と入力
最後に、RANK関数で求めた順位を元にして並び替えを行いましょう。C2セルに「=INDEX($B$2:$B$7,MATCH(ROW(B1),$E$2:$E$7,0))」と入力することで、INDEX関数とMATCH関数を使用して完全一致検索で値の取り出しを行います。
結果が出力されたらオートフィル操作を行う
結果が出力されたら、オートフィル操作を行うことで並び替えは完了です。以上が、文字列中の数値で並び替えする方法の説明となります。LEFT関数やRIGHT関数で文字列内の数値を引っ張ってくることができれば、このような方法で並び替えを行うことができますよ。

関連記事