スキップしてメイン コンテンツへ

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

注: 最新のヘルプ コンテンツをできるだけ早く、お客様がお使いの言語で提供したいと考えております。 このページは、自動翻訳によって翻訳されているため、文章校正のエラーや不正確な情報が含まれている可能性があります。 私たちの目的は、このコンテンツがお客様の役に立つようにすることです。 お客様にとって役立つ情報であったかどうかを、このページの下部でお知らせください。 簡単に参照できるように、こちらに英語の記事があります。

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

学生の名前

学生番号

安田

1

Maria

10

ウィリアム

11

Mary

以内

もらう

2

リン

3

Jason

4

Mary

5

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

  • フィールドに数値のみが含まれている場合は、フィールドのデータ型を数値または通貨に変更することを検討してください。

  • 次の手順を実行します。

    • このフィールドには数値のみが含まれていますが、フィールドのデータ型を変更しないようにします。

    • このフィールドには数値と文字列の両方の値が含まれていますが、並べ替えの際には文字列値を無視する必要があります。

この手順では、 Val関数を使用して、文字列として保存されている数値の数値を取得します。 また、この式では、 IIf関数を使用して、並べ替えフィールドに含まれる可能性がある null 値を処理します。

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

  2. 最初の列の [フィールド]行に「 Expr1: IIf ([フィールド名] Is Null, 0, Val ([フィールド名])))を入力します。

    IIf関数は、フィールド値が null かどうかを確認し、その場合は0として扱います。 値が null ではない場合、 IIf関数はVal関数を呼び出して、相当する数値を取得します。

  3. [並べ替え] セルで、[昇順] または [降順] を選択します。

    昇順の並べ替えを行うと、最も小さい値のレコードと一番下に最大値のレコードが表示されます。 降順の並べ替えでは、逆の処理が行われます。

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

上記の手順を実行してもうまくいかない場合は、表の構造の変更を回避する別の方法もあります。 これには、"パディング" の値が含まれていて、先頭のゼロが含まれている桁数が少なくなります。 たとえば、並べ替えを適用する前に、値11、2、2000、3を0011、0002、2000、0003に変更します。

ページの先頭へ

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

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

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

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

×