• ベストアンサー
  • すぐに回答を!

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というふうに式を作ってみましたが。。。うまくいきません。 よろしくお願いします。

共感・応援の気持ちを伝えよう!

  • 回答数2
  • 閲覧数84
  • ありがとう数2

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

  • ベストアンサー
  • 回答No.1
  • kent_a
  • ベストアンサー率18% (36/199)

え~とですね 「b」と「c」の条件はそれぞれ10~49、50~99ですよね 「b」の場合で考えると AND(RIGHT(A1,1)="b",A2<50) これだとA2が50未満なのでA2が0~9でもGOODになります。 AND(RIGHT(A1,1)="b",A2<50,A2>9) って感じにに「9<A2<50」の条件を成立するようにするとかですかね

共感・感謝の気持ちを伝えよう!

質問者からのお礼

よくわかりました。 ありがとうございました。

関連するQ&A

  • IFを使った複数関数の組み合わせ

    A1に100、A2に80、A3に80と入力されているとします。 MODE関数を使って最頻値を出すと 答えは「80」になります。 では、A1に100、A2に80、A3に60のような場合は「#N/A」 となりますので、その場合は3つセルの平均値を出したいとします。つまり答えがやはり「80」ですね。 そういう答えになる式は =IF(MODE(A1:A3)="#N/A",AVERAGE(A1:A3),MODE(A1:A3)) では、だめでしょうか。

  • Excel:IF関数について

    以下のような条件付けのものを、Excelで関数にしたいと思います。どなたかお知恵を拝借できないでしょうか? 1)内容 「A1セル、A2セル、A3セルにランダムの数字が入ります。もしA3セルの数字がA1セルとA2セルとの数字の間にある時は、A4セルにA3セルの数字を表示させ、もしA3セルの数字がA1とA2セルの数字の間に入っていない場合は、A1・A2・A3セルの数字の中央値をA4セルに表示させる。」 2)自分なりに考えたが、分からない点 IF関数を使い、「=IF(AND(A3>A1,A3>A2)またはAND(A3<A2,A3<A1),median(A1:A3),A3)」で表現できるかと思いました。ただ、この中で「または」と書いたところのexcelでの関数の作り方がわかりません。

  • IF関数

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

その他の回答 (1)

  • 回答No.2
  • CoalTar
  • ベストアンサー率40% (705/1742)

=SEARCH(RIGHT(ASC(A1),1),"abcd")=MATCH(B1,{1,10,50,100}) 末尾の大文字・小文字・全角・半角 どれでもOKとしています GOOD,NG および、空白時の処理は追加してください

共感・感謝の気持ちを伝えよう!

質問者からのお礼

こんなやり方もあるんですね。 勉強になりました!ありがとうございます。

関連するQ&A

  • 以下のIF関数について間違いがあればご指摘ください

    当方、関数式を学び中ですがIF関数を以下の例を使って組み立てましたが違っているかもしれませんのでご指摘ください。 たとえばA3に、A1かA2いずれかのセルから減算した数を示す場合の関数式を求めることが目的です。 A1セルとA2セルの一方は正数、かつ一方は0となる。 (たとえば「A1」に「100」という数値がある場合はA2は必ず「0」が入力される。同様、「A1」が「0」の場合には「A2」は「100」と入力される条件) 式はIF関数式の構成に合わせ、アバウトに作って試してみたところ一応結果は正常にでました。 それがこの式 =IF(A1<>A2,A3-A1,A3-A2) なのですが、疑問があります。 IF関数の条件に対応させた場合の引数1は「判定条件」であり「A1とA2は等しくない」となるそうなので「A1<>A2」としましたが、「A3-A1」は引数2の「判定が真の場合の処理」、「A3-A2」は引数3「判定が偽の場合の処理」となってしまいますがこれでよいのでしょうか?それとも間違った式の偶然の正しい結果だったのでしょうか。 そこで正しい式と構成についての筋道を教えていただきたく思います。 また「" "」という点を入れる場合はどのようなものに対してでしょうか? これについても教えてください。

  • IF関数について

    A4に=IF(SUM(A1:A3)=0,"",SUM(A1:A3))、 B4に=IF(SUM(A1:A3)=0,"",SUM(A1:A3))と式があり C4に=IF(AND(A4="",B4=""),"",B9-C9)と入力すると #VALUEが返ってしまいます。 A4,B4どちらかのセルが""の時でもB9-C9の引き算の値が返るようには出来ないでしょうか?

  • IF関数で・・ただし・・・

    教えてください。 表があります。セルA1に数値があります。セルA2に他の場所での合計が入ります。A3にA1とA2の小さい方の値が入ります。A3の関数は、MIN(A1,A2)。隣のB3に別の合計数があり、C3にA3+B3の値がきます。 B4に関数で、IF(A3<A1,B3,IF(A3>A1,0))と入れてます。そこで少し問題の場合が出てきたんです。B4に「但しC3がA1より大きくなる場合はA1-A3の値にするという条件」を付け加えたいのです。どうすればいいのでしょうか? 説明もややこしくてすみませんが、よろしくお願いします。

  • AND関数に入れる条件を簡略化する方法

    A列にA1から順に数字が入力されていて、数字の大きさに例えば A1<A2<A3 という関係があるとき、B3にXと入力し、それ以外の場合何も入力しないとき B3に =IF(AND(A1<A2,A2<A3),"X","") と入力すればよいと思いますが、A1<A2<A3<・・・・・<A100 という条件をすべて満たすとき、B100にXと入力したいとき、同じような条件式を入力しようとすると、AND関数の中に99個も不等式を入れなければなりません(そもそもそんなに条件が入れられるかどうかももわかりませんが)。 簡単に条件式を作る方法はありますか。

  • IF関数で数字とアルファベットが混ざった場合。

    セルの中が数字とアルファベットが混ざっている場合、IF関数は使えますか? 例えば、 A1に「3L123-1」 A2に「3H456-1」 A3に「3L789-10」 A4に「3F123-1」 と入力されていて、いちばん最初は3で決まっていますが、次のアルファベットは違う場合があり、次の123とか456の部分がいろいろな3桁の数字で、そのうち123だけを「合格」としたい場合です。 詳しい方、どうぞよろしくお願いいたします。

  • if(and)関数の数が8番目になるとエラーが出ます。

    関数の初心者です。宜しくお願い致します。 Excel2000使用 セルB1に下記の様な関数を15個入れていようとしていますが、7個までは問題なくなく正しく計算されます。8個目を入れますとエラーが出てきた進む事が出来ません。エラーの原因はどこにあるのでしょうか? ご指導願います。 =IF(AND(A1>=0,A1<=650999),0,IF(AND(A1>=651000,A1<=1618999),A1-650000,IF(AND(A1>=1619000,A1<=1619999),969000,IF(AND(A1>=1620000,A1<=1621999),970000,IF(AND(A1>=1622000,A1<=1623999),972000,IF(AND(A1>=1624000,A1<=1627999),974000,IF(AND(A1>=1628000,A1<=1799999),ROUNDDOWN(A1/4,-3)*2.4,))))))) ※ここまで7個は問題なく計算されます。 その後に8個目↓を入れますとエラーが出ます。 IF(AND(A9>=1800000,A9<=1999999),ROUNDDOWN(A9/4,-3)*2.8-60000) エラーは“入力した数式はエラーがあります。ヘルプ・・・・、数式を入力していない場合は(=)(-)を使用しないか・・・・” 確認した事は、 1.閉じ括弧「)」や「,」の確認 - 漏れはありませんでした。 2.7番と8番(ROUNDDOWNのついているもの)のみ、別のセルに移して見たら、エラーが出ず正常に作動します。 一つのセルに入力できる関数の数または、一つのセルに対する字数に制限されているのでしょうか? もしそうであれば、別な方法はありますか? 宜しくお願い致します。

  • IF関数の選択肢を増やす方法について

     例・・・A1セルに4、B4セルに3、C5セルに2が入力されると                                    D1セルに5が表示。      A1セルに3、B4セルに2、C5セルにAかBが入力されると                                    D1セルに6が表示。                         ・                         ・                         ・                        続く。 D1セルに、 =IF(AND(A1=4,B4=3,C5=2),5,IF(AND(A1=3,B4=2,OR(C5="A",C5="B")),6,・・・・  のような感じで増やしていたのですが、IFが7つで限界?のようなのですが、 何か方法はありますか?もしあれば教えてください・・・。 エクセル2003です。よろしくお願いします。

  • このIF関数についての疑問を教えてください。

    いつもお世話になってます。以下の件についてご教示のほどよろしくお願いいたします。 エクセル2003にて セルA1に「1」が入力されています。 セルA2に「=IF(A1>=3,4,A1)」と式が入ってます。 セルA2に「4」と表示されます。 なぜ「1」と表示されないのでしょうか。

  • IF 関数についてです。

    IF 関数についてです。 教えてください、お願いします。 例えば A1でエラーメッセージでたらA1セルは1と認識、 A2でもエラーメッセージがでたらA2セルを1と認識し、 A1とA2のどちらかで正常な数字がでたなら、その数字を使用する。 A3にA1とA2の両方を足した数字を答えでだしたい場合には どのような関数をつくればいいのでしょうか? みなさま、お知恵をお貸しくださいませ。

  • IF関数とOR関数

    いつも質問ばかりですみません。 A1からA12のセルに『0』、『1』、『2』、『3』、『4』の数値が入ります。(他のシートとリンクしており、A1のセルにはシート1の計算結果が入り、A2にはシート2の結果が入るため、シート3で計算していないとA3には#N/Aが入っています。) 求めたいのはA1からA12の中で、『1』、『2』、『3』が入っているときには『○』を返し、そうでない時は『 』(空白)を返したいのです。 『1』だけの時は、=IF(COUNTIF(A1:A12,"1"),"○","")で出来たのですが、『2』の時も『3』の時も『○』を返したいのです。 OR関数を組み合わせれば出来そうなのですが、未熟者なので苦戦しております。 よろしくご教授下さい。