• 締切済み

エクセルのIF関数

IFの関数で、処理に2つ以上指定することってできますか? 例えば、 sheet1のA1=1の時、sheet2のB1には2、sheet3のB1には3という処理をして、それ以外の時はさらにIF文で条件を分岐させたいのですが、 エラーになってしまいました。

みんなの回答

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.3

質問者は基礎的にエクセル関数と言うものを判ってないので、こういう質問が出ると思います。 エクセル関数は、値をセットするセルに関数を入れるものです。 セルの値は1つです。自分自身の値を決められるだけです。 キャッチャーが投げてもらうイメージです。 (VBAならできるが、)エクセルの関数では、あちらのセルには値をこう、こちらのセルへはへはこう、という風に、式をセットする以外のセルを、どうこうできません。ピッチャーのイメージではありません。

gatyapiiin
質問者

お礼

ありがとうございます。 sheet2でsheet3の条件も入れていたため、エラーになっていました。

  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.2

>sheet1のA1=1の時、sheet2のB1には2、sheet3のB1には3という処理をして sheet2のB1に =IF(Sheet1!A1=1,2,IF(次の条件)) sheet3のB1に =IF(Sheet1!A1=1,3,IF(次の条件)) となりますが、 >それ以外の時はさらにIF文で条件を分岐させたいのですが、 何が問題なのでしょう。 エラーになった式、 どのセルに式を入れたかなど 補足が必要だと思います。

gatyapiiin
質問者

お礼

ありがとうございます。 sheet2でsheet3の条件も入れていたため、エラーになっていました。

  • bari_saku
  • ベストアンサー率17% (1827/10269)
回答No.1

sheet2のB1およびsheet3のB1のセルそれぞれに、sheet1のA1=1の時に2もしくは3を入れるという式を書けばいいと思うのですが、この答えで合ってますでしょうか。

gatyapiiin
質問者

お礼

ありがとうございます。 sheet2でsheet3の条件も入れていたため、エラーになっていました。

関連するQ&A

  • 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とかで作った方がいいのか?(できれば使いたくないのですが。)

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

    こんにちは。 以下の全てを含む条件の式を作りたいのですが、 どのように関数の式を組み立てていいのかわかりません。 3つの条件を一つの式に盛り込むにはどうしたら良いのでしょうか? 1.A1~A10までのどこかに、1つでも「●」があって、   B1~B10までのどこかに、1つも「●」がない 2.A1~A10までのどこかに、1つでも「●」があって   B1~B10までのどこかに、1つでも「●」がある 3.A1~A10までのどこかに、1つも「●」がなく   B1~B10までのどこかに、1つでも「●」がある 1の場合、可 2の場合、可 3の場合、不可 1をIF((A1:A10)="●",isblank(A1:A10),"可"," ") として試みたのですが、 エラーが出てしまいます。 そもそも A1~A10 (A1:A10)の時点でエラーになってしまうようです。 IF関数では、複数セルを指定することは不可能なのでしょうか? 宜しくお願い致します。

  • 【エクセル】if関数 or条件に関して

    エクセル初心者です。 A列を検索条件とし B列から検索 一つでも該当がある場合にはCにチェックを入れる (もしくは該当セルの色を変える等) という関数を作りたいと思っています。 IF関数を使って試しに作ってみました。 =IF(OR($A$1=$B$1:$B$26,$A$2=$B$1:$B$26,$A$3=$B$1:$B$26),"○","×") ※結果は画像を参照お願い致します。 A列の(a,f,m)という文字列を条件としてB列を検索し、一つでも該当する場合には C列に○を、該当しない場合は×をつける。 検索条件を(A1,A2,A3)と3つだけの場合はこちらで対応出来るのですが、 本来やりたいものは、 (A列)検索条件が100個以上、 (B列)検索をかける対象も1000個以上といったものをやりたいので (A1,A2,A3・・)を手打ちだとものすごく時間がかかってしまいます。 なので、文字列の条件を簡単に範囲指定(複数指定)出来るような書き方があれば 教えて頂きたいと思い質問をさせて頂きました。 また、以下のIF文を最初に思いついたのですが、 こちらは書き方が間違っているようで、「!」が出てしまいました。 =IF($A$1:$A$3=$B$1:$B$26,"○","×") 自分ではなにがいけないのかがわからなかったので、 出来ればこちらの関数の矛盾点も指摘して頂きたいです。 関数の単語だけでも、なにかヒントを頂きたいと思っています。 よろしくお願いします。

  • 条件分岐(if)について

    条件分岐(if)についてお聞きしたことがあります。 例えば if($a == 'A' || $a == 'B'){ 処理 }else if($a == 'C' || $a == 'D' || $a == 'E'){ 処理 }............... といった条件分岐があったとて、お聞きしたいことが2点あります。 ・条件分岐この後も数十個続いたとします。その場合もelse ifで一つ一つ 条件を書かなければならないのでしょうか? ・条件式if($a == 'A' || $a == 'B'....)が長くなる場合プログラムが見にくくなるので 別途に条件式を書いておいてif文の所では($a == ◯)といったように簡潔に書くことは できないのでしょうか? 宜しくお願いします。

    • ベストアンサー
    • PHP
  • エクセル2007 IF関数について教えてください

    お世話になります。 どうしてもIF関数がうまくできず困りはてています。 下記のような項目を含むデータを2万件くらい抽出しています。 A列     B列  C列      D列 E列 状況    拒否理由       注文数   確認数 (1) 在庫不足   入力ミス  1     0 → キャンセル (2) 在庫不足       1      0 → 未処理 (3)                 5        0 → 未処理 (4)                 1       1 → 処理済 (5)   お客様キャンセル      10    0     →     キャンセル 未処理の件数を管理したいのですが、キャンセル扱いとなる条件を除く IF関数をうまく作成できません。 =IF(AND(D2>0,E5>0),"完了","未処理") といったように1個の条件についてはなんとかできるのですが、 B列が空欄or文字の入力有、C列が空欄、E列が0の数字の場合、D列の 数字を表示しなさい、といったようにまとめて、条件式をつくることができません。 何個かつなげると、TRUE、FALSEと表示され指定する列の(この場合D列)数字が表示 できません。 IF関数でなくてもよいのですが、未処理(キャンセル扱い除く)条件のみの数字を表示させる 方法をご教示お願いいたします。

  • IF関数でできますか?

    次のような条件でIF関数は使えますか? Aの値が50以上,Bの値は60以上,Cの値は150以上として3つとも条件をクリアしていれば○、A,B,C3つのうちどれか2つまでクリアしていれば△、1つもしくは3つともクリアしていなければ×をつけたいのですが、IF関数を使えばいいのでしょうか?○はANDを使えばいいと思うのですが、△、×はどうすればいいのでしょうか?

  • IF関数の条件に関数を指定

    Excelに関する質問です。 ちょっと分かりづらいのですが、例えばセルA1とB1があるとします。 A1には別シートのセルが参照されています。(「="あ!A1"」など) ここで、B1にはIF関数を入れたいのですが、その時A1の関数式内の文字を条件にしたいのですが、そういうことはできますか? つまり、B1にIF関数で「A1セル内の関数式内に"あ"の文字がある時に"い"と表示する」のようにしたいのです。 普通に「=IF(A1="あ","◯","")」ではできません。 Google先生でも調べてみたのですが、分かりませんでした。 お知恵をいただければ幸いです。

  • エクセルIF関数

    A列に鉄板と和食の種別 B 売上 A1が鉄板だった時、B1の売上を C1に表示する このような条件の場合、IF関数を使うのでしょうか? IF関数をネットで検索しましてもちょっとこのような数式は当てはまらないのかな と思っております。 もしどのような関数を使えばいいのか教えて下るかたがいらっしゃいましたら よろしくお願いします。 レストランの売上をエクセルでおこないたいと考えておるものです。

  • Excel2003 IF関数

    シート1のA列に値を入力して行き、終了したら同じようにシート2のA列に値を入力して行きます。 この時、シート1に入力した値とシート2に入力した値は同じでなければなりません。 シート2は再チェック用なので、シート1と値が異なる入力をした場合、 値を入力するセル(A列)の隣のセル(B列)に、 IF関数、真の場合『OK』・偽の場合『入力エラー』と反映されるようにしております。 =IF(B1=seat!B1,"OK","入力エラー") 『OK』の場合は表示させる必要は無いので、条件書式を使用し、 フォント色を白くして、表示させないようにしております。 ただ、シート1を入力してからシート2に入力を始めるため、 シート2のB列には既にに『入力エラー』の表示がでてしまっています。 ※値を入力しないセルもあるのでその場合は『OK』が表示されますが、 条件書式によりフォント色を白くしておりますので、表示されません。 シート2には何も入力をしていないので、『入力エラー』と表示されるのは当然なのですが、 シート2に値を入力してから、シート1,2で異なる値の場合だけ『入力エラー』と表示されるのが理想です。 IF関数はこのような場合適していないのでしょうか? 何か良い方法がございましたらご教示頂けますと幸いです。 宜しくお願い致します。

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

    指定したセルと等しい数値(文字列?)をLOOKUP関数を使って別シートのデータベースを検索させて、そのシートに無ければまた別のシートのデータベースを検索させるものを作りたいのですが上手くいきません。 指定したセルが空白なら空白を返すように次のような感じで作っています。 IF(A1="","",IF(LOOKUP(A1,シート1!A1:A15,A1:A15)<>A1,LOOKUP(A1,シート2!A1:A15,B1:B15),LOOKUP(A1,シート1!A1:A15,B1:B15))) VLOOKUP関数でもやってみたのですがこちらも上手くいきません。 IF(A1="","",IF(LOOKUP(A1,シート1!A1:A15,A1:A15)<>A1,VLOOKUP(A1,シート2!A1:B15,2,0),VLOOKUP(A1,シート1!A1:B15,2,0))) ご指摘いただければ嬉しいです。

専門家に質問してみよう