• ベストアンサー

エクセルIF関数

①A1セル内の数字 右から3桁を抽出 ②抽出した3桁の数字がB1セル内の数字と一緒であれば「◎」 ③間違っていれば「 」 =IF(RIGHT(A1,3)=B1,"◎","") だと思ったのですがうまくいきません。 ご教授ください。

質問者が選んだベストアンサー

  • ベストアンサー
  • are_2023
  • ベストアンサー率30% (422/1368)
回答No.1

RIGHT関数は右から指定した文字数分の文字列を返します A1が数字でもRIGHTで返される物は文字列です だからB1の数値と比較すれば必ず不一致になります =IF(VALUE(RIGHT(A1,3))=B1,"◎","") こうすれば数値同士の比較になるので期待通りになると思います

1062taranu
質問者

お礼

文字列と数値、今後は念頭に入れて考えてみます。 わかりやすくご説明いただき助かりました、ありがとうございます。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • kkkkkm
  • ベストアンサー率65% (1646/2496)
回答No.2

RIGHT(A1,3)で文字として扱われるのでB1の数値とは一致しなくなっています。 VALUEを付けて数値にして試してみてください。 =IF(VALUE(RIGHT(A1,3))=B1,"◎","")

1062taranu
質問者

お礼

VALUEは初めて知る関数でした、とても勉強になります。 わかりやすく解説いただき助かりました、ありがとうございます。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • ExcelのIF関数で

    IF関数で質問なんですが、複数条件(アンケートのような物)で、例えばA1:B100の中で、A列が「5」で且つB列が「3」の物を数えなさい。という式で抽出結果を一覧表にしたいのですが、抽出結果が0の場合「0」が表示されてしまい、とても見苦しくなってしまいます。0の場合は空白にしたいのですが悩んだ結果、 =IF(SUM(IF(A1:A100=5,IF(B1:B100=3,1,0),0))=0," ", (SUM(IF(A3:A100=5,IF(B1:B100=3,1,0),0)))) のような長い式になってしまいました。他に良い方法かあるでしょうか? ご教授ください。

  • IF関数とAND関数の組み合わせについて

    IF関数を使用し下記の条件にしたいのですが、 どうにも行き詰っています。。どうすればいいのか、またもっといい方法があればご教授ください。 (1)A1には品番プラスアルファベットを入力(末尾に数量が1~9個なら「a」10~49個なら「b」50個~99個を「c」100個以上を「d」と入力する) (2)A2には数量を入力 A1とA2が合っているかを確かめA3セルにGOODかNGかを表示できるようにしたい。 A3セルに =IF(AND(RIGHT(A1,1)="a",A2<10),"GOOD",IF(AND(RIGHT(A1,1)="b",A2<50),"GOOD",IF(AND(RIGHT(A1,1)="c",A2<100),"GOOD",IF(AND(RIGHT(A1,1)="d",A2<=100),"GOOD","NG")))) A1セルの右から1文字目がaでかつ10より下ならGOODというふうに式を作ってみましたが。。。うまくいきません。 よろしくお願いします。

  • Excelのif関数を使ったのですがうまくいきません。

    Excelのif関数を使ったのですがうまくいきません。   | A | B | C | D | E ----------------------- 1 | A | A | A | A | 5 2 | B | A | A | B | 4 3 | C | C | A | C | 2 のようにA1~D4のセルに入力されたA,B,C の組み合わせによって E5のセルに1~5の数字を入れていきたいのですがAAAA~CCCCの組み合わせが 15通りあってif関数では入れ子ができません。 AAABもAABAも同じと判断させて1~5の数字を自動的に入力させたいのですが 何かいい方法はないでしょうか。 教えてください。

  • Excelの関数『IF』にて・・・

    EXCELにて、関数IFを使って一覧表から 自動入力をしたいと考えています。 例えば、以下のようにしてセル『C1』の数字に 応じて、自動を試みたい時 =IF($C$1>80,"=A1",IF($C$1>70,"=B1","=C1")) =A1,=B1,=C1 の場所を文字列としてしか読み取ってくれません =A1,=B1,=C1では無く=A1,=B1,=C1のセルに入力されてる 数式(他のセルの値)を、表示したいんですが どのようにすれば可能でしょうか? 何度やっても「=A1」と、そのまま文字列として出て来ちゃいます。

  • Excel 長すぎるif関数

    こんにちは。Excelを使って、条件によって表す表示を変える場合、 例えばa1のセルには0~100までの任意の数字を入れるとして、b1のセルにa1の数字に応じていろいろな表示をしたい場合(具体的には100ならAを表示、90~99ならB、70~89ならC、55~69ならD・・・といったように)、if関数を使うと思いますが、 =if(a1=100,"A"1,if(a1>=90,"B",if(a1>=70,"C",if・・・・)))というように長々と続きますね。条件が少ないうちはいいのですが、条件が多くなると、大変複雑な式になり、入力もしづらいし、頭も使うし、閉じる括弧の数もわからなくなるし、作成に時間もかかりますよね。2つ以上の条件が重なる(例えばA1が90~99の範囲でかつa2がAならb1にB1と表示するなど)など複雑になってくるともうお手上げです。 これらを短時間で要領よく作成する方法はないでしょうか?次の観点で教えてください。 1 if以外の良い関数はあるか?または良い機能はあるか?それとも複雑であってもif関数が妥当なのか? 2 (if関数が妥当であるとして)複雑なif文の作成を簡単にできる方法があるか?あるいはそんなソフトがあるか? 3 やっぱりそういうのはVBAとかで作った方がいいのか?(できれば使いたくないのですが。)

  • ExcelのIF関数を使って

    エクセルのことについて教えて下さい。 エクセル2003のIF関数を使って、次のようなことがしたいのですが、どのようにしたらいいでしょうか? 例えば、A1のセルに1と入力したら、B1のセルにミカンと自動的入力され、2と入力したらバナナ、3と入力したらモモ・・・・となるようにです。(A1セルには1から5までの数字が入ります。) よろしくお願いします。

  • EXCELのIF関数?

    質問させてください。 3つの数字がありAとB、AとC、BとCの強弱をそれぞれみていて、Aが一番大きいとします。 このとき、EXCELの関数を使いセルに一番強いAが表示されるようにしたいのです。 この3つの数字は毎秒変わっているのでAじゃないときももちろんあるので、そのとき一番強いものが 常に表示されるようにしたいのですが、 最初IF関数で式を書こうと思ったのですが、うまくいきません。 どなたかご教示ください。よろしくお願いいたします。

  • IF関数

    セルA1に例えば2000とあり、B1に例えば30と数字が入った場合はD1にA1の2000に30プラスになり2030と出て、C1に例えば30と数字が入ったらマイナスされて1970となるようにしたいのです。 D1のセルにIF(B1<>"",A1,A1-C1)と入力してもプラスはしてくれるのですがマイナスの方はなりません。 どうか教えてください。

  • エクセルでのIF関数:この場合どうすれば?

    IF関数を使うと思うのですが、このような場合どのように入力すればよろしいのでしょうか? 特定のセル(たとえばC1のセル)にマイナスの数字もしくは、プラスの数字もしくは空白が入力されており、たとえばB1のセルに関数を入力するとき C1に空白以外の数値が入力されている場合に限り、A1に入力されている数値をB1のセルに入力(反映)させたい場合。 また同時に、C1が空白の場合、B1も0ではなく空白にしたい。 どなたかご教授ください。よろしくお願い致します。

  • エクセル IF関数について

    C1セルに結果を求めたく、例えば下記のように A1セルがTRUEだったときにC1セルに0(数字)と結果が出る。 A1セルがFALSEで、B1セルが0(数字)だったときにC1セルに1(数字)と結果が出る。 A1セルがFALSEで、B1セルが0(数字)よりも大きい数字だったときにC1セルに2(数字)と結果が出る。 のような場合、C1セルに入れる式を教えてください。

このQ&Aのポイント
  • 通信管理レポートの製品設定ができない問題について、Windows10環境での無線LAN接続に関連しています。
  • 先日、古いソフトウェアをアンインストールして新たにインストールし直したところ、製品設定ができなくなりました。
  • MFC-J738DNでは設定ができていたため、PC-FAXのバージョン情報の相違が問題の原因と考えられます。
回答を見る

専門家に質問してみよう