テキスト フィールドに保存されている数値に基づいてレコードを並べ替える

テキスト型またはメモ型のフィールドに格納される数や文字列は、アルファベット順に並べ替えられます。つまり、数は、数値ではなく、値を構成する個々の数字に基づいて並べ替えられます。たとえば、次の表に示すように、値 11 は 2 より前になり、値 12 は 3 より前になります。

学生名

学生番号

John

1

Maria

10

William

11

Mary

12

Jane

2

Lynn

3

Jason

4

Mary

5


アルファベット順ではなく、数値に基づいて並べ替えられるようにするには、次のいずれかを実行してください。

  • フィールドに数値しか格納されない場合は、フィールドのデータ型を [数値型] または [通貨型] に変更することを検討します。

  • 次のような場合は、この後の手順に従ってください。

    • フィールドには数値しか格納されないけれども、フィールドのデータ型を変更しない。

    • フィールドに数値と文字列の両方が格納されるけれども、並べ替えるときに文字列値を無視する。


この手順では、Val 関数を使用してテキストとして格納されている数の数値を取得します。式では、並べ替えフィールドに存在する可能性がある Null 値を処理するために IIf 関数も使用します。

  1. [ホーム] タブの [並べ替えとフィルター] で [詳細設定] をクリックし、ショートカット メニューの [フィルター/並べ替えの編集] をクリックします。

  2. 最初の列の [Field] 行に式「Expr1: IIf([Fieldname] Is Null, 0, Val([Fieldname]))」を入力します。

    IIf 関数では、フィールド値が Null かどうかチェックし、Null の場合は、そのフィールド値を 0 と見なします。値が Null でない場合は、IIf 関数から Val 関数を呼び出して、相当する数値を取得します。

  3. [Sort] セルで、[昇順] または [降順] をクリックします。

    昇順の並べ替えでは、最も小さい値のレコードが一番上に、最も大きい値のレコードが一番下に表示されます。降順の並べ替えでは、その逆になります。

  4. [ホーム] タブの [並べ替えとフィルター] で [フィルターの切り替え] をクリックします。

前出の手順が機能しない場合は、テーブルの構造を変更しなくても済む別の方法を試みることができます。これには、桁数の少ない値にゼロが先行する "埋め込み" 値が必要です。たとえば、値 11、2、2000、および 3 を 0011、0002、2000、および 0003 に変更してから、並べ替えを適用します。

ページの先頭へ

スキルを磨く
トレーニングの探索
新機能を最初に入手
Office Insider に参加する

この情報は役に立ちましたか?

ご意見をいただきありがとうございます。

フィードバックをお寄せいただき、ありがとうございます。Office サポートの担当者におつなぎいたします。

×