次の方法で共有

Excelの”数値文字列の比較”について

Anonymous
2019-08-07T08:05:20+00:00

数値文字列の比較が数値の場合と異なります。

比較条件の内訳を知りたいです。

ーーーーーーーーーーーーーーーーーーーーー

Excelで下記数値比較した場合は、問題ありません。

セルA1:20

セルA2:100

セルA3:=if(A1<A2,1,0)

 →結果:1となり、正常です。

Excelで上記セルA1とA2のセル書式を”文字列”にした場合、

値が”数値文字列”となります。

セルA1:20(文字列)

セルA2:100(文字列)

セルA3:=if(A1<A2,1,0)

 →結果:0となり、上記(数値の場合)と異なります。

  セルA1とA2の最左文字のみ(2<1)を比較しているようです。

セルA1:20(文字列)

セルA2:300(文字列)

セルA3:=if(A1<A2,1,0)

 →結果:1となり、セルA1とA2の最左文字のみ(2<3)を比較しているようです。

ーーーーーーーーーーーーーーーーーーー

下記認識で合っているのでしょうか?

★”数値文字列”の場合、最左文字のみを比較する。

★文字列と数値文字列を比較する場合は、数値文字列<文字列となる。

上記についてのアドバイスを希望いたします。

よろしくお願いいたします。

Microsoft 365 と Office | Excel | 家庭向け | Windows

ロックされた質問。 この質問は、Microsoft サポート コミュニティから移行されました。 役に立つかどうかに投票することはできますが、コメントの追加、質問への返信やフォローはできません。

0 件のコメント コメントはありません

質問作成者が受け入れた回答

  1. Anonymous
    2019-08-07T09:09:29+00:00

    > 下記認識で合っているのでしょうか?

    >

    > ★”数値文字列”の場合、最左文字のみを比較する。

    正しくは「左から順にそれぞれの位置の文字を比較する」です。

    例えば "1", "2", "9", "10", "11", "20" という

    6 つの文字列の比較/並べ替えを行なった場合は

    以下のような順になります。

    (小さい)


    1

    10

    11

    2

    20

    9


    (大きい)

    > ★文字列と数値文字列を比較する場合は、数値文字列<文字列となる。

    文字列比較は「文字列の並べ替え順序」のルールに基づいて行なわれ、

    そのルールはシステムのロケール設定によって決まります。

    Windows OS のバージョンが示されていませんが、

    仮に Windows 7 以降のデフォルト環境であるとすれば

    恐らく XJIS 準拠になっているはず。

    1 人がこの回答が役に立ったと思いました。
    0 件のコメント コメントはありません

5 件の追加の回答

並べ替え方法: 最も役に立つ
  1. Anonymous
    2019-08-07T13:50:55+00:00

    文字列にして大小を比較した場合、文字コードをみていると思います。

    ファイルとかをソートした時と同じです。

    2011年ごろの内容ですが、近しい内容が書かれているものがあったので

    良ければご覧ください。

    『文字の大小比較』(タカ) エクセル Excel [エクセルの学校]

    http://www.excel.studio-kazu.jp/kw/201110220015...

    0 件のコメント コメントはありません
  2. Anonymous
    2019-08-07T09:37:05+00:00

    ご返信ありがとうございます。

    「左から順にそれぞれの位置の文字を比較する」

    ですね。

    OSはWin10となります。

    「文字列の並べ替え順序」のルールの XJIS 準拠については、勉強いたします。

    上記で、解決といたします。

    ありがとうございました。

    0 件のコメント コメントはありません
  3. Anonymous
    2019-08-07T08:55:24+00:00

    ご返信ありがとうございます。

    注目いただきたいのは、

    数値文字列同士の比較となります。

    数値文字列型になったセルは、

    セルの左上に緑色の三角が付与されます。

    0 件のコメント コメントはありません
  4. Anonymous
    2019-08-07T08:24:17+00:00

    私の環境ではどの数字に変えても1になります。

    何れにしても、文字列を数値として比較はできないので、ランダムに0か1になるか、どちらかしか出ないといったことになると思います。

    0 件のコメント コメントはありません