次の方法で共有

【Excel数式】IF関数_値の大小関係を判定_ハイフンの取り扱い条件

Anonymous
2018-10-17T00:09:53+00:00

投稿閲覧頂きありがとうございます。

下記について教えて頂きたくお願い申し上げます。

表題にあります通り、値の大小関係を数式を用いて判定したいです。

IF関数の初歩的なことは理解しておりますが、今回うまくいきません。

値の入力規則として、値がないときには

ゼロではなく-(ハイフン)を入力します。

セルAに100を入力、セルBに-を入力とすると

数式は「=IF(A<B,1,0)」とすると結果が「1」となります。

つまり100<「-」となっております。

IF関数でもし「-」の時は~、のように

記号と値を条件づけて分離しようとしても

「-」を値として読んでいるらしく、

100より大きいと判定されるようです。

■お願い事項

・うまくいかない原因、知識・思考の漏れ等

・模範解答

・他の手法(より効率的、高次な数式・思考)

お手数お掛けしますが、どうぞ宜しくお願い致します。

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

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

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

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

Anonymous
2018-10-17T06:03:21+00:00

文字(文字列)の大小比較は、

経験的にも

数値の大小比較のような単純な話にはならないようです。

インターネット上を漁ってみると

いろいろと登場してきます。

例えば

https://qiita.com/jnchito/items/077f6d541d53152aa680

といった具合です。

さて、

添付の画像は、K列を指定して並べ替えたシートです。

ここから推察すると、どうやら、

エクセルのスプレッドシート上での話に限れば、

 数値<文字

 同じ文字種なら 半角 < 全角 、 小文字 > 大文字

のようです。

もし、

 -1 < - < 0 < 1 あるいは

 -1 < - < 0 < 1

という比較結果にしたいのであれば、例えば

大小比較する直前で

-(半角ハイフン)や-(全角ハイフン)を

-0.5 に読み替えるような手当が必要だろう思います。

この回答は役に立ちましたか?

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

5 件の追加の回答

並べ替え方法: 最も役に立つ
  1. Anonymous
    2018-10-22T00:02:57+00:00

    ハイフンの時の条件分岐を追加すれば良いだけなので、if 文を入れ子にすれば解決です。

    ==========================

    IF関数でもし「-」の時は~、のように

    記号と値を条件づけて分離しようとしても

    「-」を値として読んでいるらしく、

    100より大きいと判定されるようです。

    ==========================

    上記は質問文の引用で、入れ子のことです。

    条件付けにおいて「-」は値ではなく記号として優先的に捉えられるかが

    質問文の「うまくいかない原因、知識・思考の漏れ等」の

    論点になると思います。

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません
  2. Anonymous
    2018-10-21T23:55:13+00:00

    0(ゼロ)と入力しない理由は何なのでしょうか?

    入力者が自分ではありませんので、誤入力防止のためです。

    詳細な理由は質問と話が逸れますので、割愛致します。

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません
  3. Anonymous
    2018-10-20T06:23:55+00:00

    ハイフンの時の条件分岐を追加すれば良いだけなので、if 文を入れ子にすれば解決です。

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません
  4. Anonymous
    2018-10-20T06:07:59+00:00

    0(ゼロ)と入力しない理由は何なのでしょうか?

    この回答は役に立ちましたか?

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