EXCEL2007/IF関数の複数条件設定について

このQ&Aのポイント
  • EXCEL2007でIF関数を使って複数条件の設定方法について悩んでいる方への解説です。
  • A日程とB日程を比較し、条件に応じて異なる値を返すための設定方法を紹介します。
  • 具体的な例を挙げながらIF関数の使い方を解説し、ターゲットの値を正しく返す方法を解説します。
回答を見る
  • ベストアンサー

EXCEL2007/IF関数の複数条件設定について

EXCEL2007でIF関数を複数条件の設定がうまくできずに悩んでいます。 やりたいことは、下記になります。 A日程・B日程をそれぞれ設定するとします。 A日程を起点にしたときに、B日程が 6日以上前に該当する場合は、「6日以上前」、 5日以内前に該当する場合、「5日以内」、 重複する場合(重複期間は5日)は、「重複」という値を返したいと思っています。 たとえば、 A日程が8/28で、B日程が8/10の場合⇒「6日以上前」 A日程が8/28で、B日程が8/23の場合⇒「5日以内」 A日程が8/28で、B日程が8/25の場合⇒「重複」 となります。 図で表すと下記のような感じです。 IF関数で複数条件設定すればできるかと思うのですが、うまく設定できません。 設定の仕方をお教えいただければと思います。どうぞよろしくお願いします。

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

  • ベストアンサー
  • shintaro-2
  • ベストアンサー率36% (2266/6244)
回答No.1

もしどうしてもIF文だけで構成するならこんな感じ =IF(A1-B1>5,"6日以上前",(IF(A1-B1>-1,IF(A1-B1<3,"5日以内重複","5日以内"),IF(B1-A1<4,"重複","")))) 数字は調整してください。 ロジックとしては 6日以上前 yes→6日以上前  no 同日以前で2日以内yes→5日以内で重複                  no 5日以内     同日より後で3日以内yes→重複                   no 無印  ANDと組み合わせればもっとすっきりするのでしょう。          

kinoff111
質問者

お礼

ANDとの組み合わせを使って考えていました。 ロジックが分かりやすいです。 ちゃんと整理しないとダメですね。。 参考になりました!ありがとうございます!!

その他の回答 (1)

回答No.2

5日以内と重複の定義が理解できない、そして範囲外の扱いも... A1:A日付 B1:B日付 D1: =$B1-$A1 これは差分日数を計算(正負あり)、 書式は数値・整数 E1: =IF(D1<-5,"6日以前",IF(AND(D1>=-5,D1<0),"5日以内",IF(AND(D1>-5,D1<=5),"重複","???")))

kinoff111
質問者

お礼

分かりづらくてすみません。。 ただ、IF関数とAND関数を組み合わせて考えたかったので参考になりました! ありがとうございます!

関連するQ&A

  • 【エクセル】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関数か他の関数で、5つの複数条件を設定したい

    IF関数をつかって、下記の条件で設定したいと思っています。 C5セルに 「=A5-B5」 という式を入れ、その際、C5セルに下記条件にあるような回答が出た場合、D5セルに、「ランクA」~「ランクE」のような表示が出るようにしたいのです。 初歩的かもしれませんが、どうかよろしくお願い致します。 (条件) +5以上 ⇒ 「ランクA」を表示させる  +2以上~+5未満 ⇒ 「ランクB」を表示させる  -2以上~+2未満 ⇒ 「ランクC」を表示させる  -5以上~-2未満 ⇒ 「ランクD」を表示させる  -5以下        ⇒ 「ランクE」を表示させる 

  • IF関数に、二つの条件を入れたいです

        A     B      C 1. 100     90     ○ このような場合で、もしA1-B1が1以上の場合のみ、C1に○が出るようにしたいのですが、A1に入力しただけで○が出てきてしまいます・・ B1を入れたときに、初めて○がでるようにしたいのですが、IF関数に条件を いくつか入れられるのでしょうか? この関数式がどうしても、分かりません。よろしくお願いします。

  • エクセル IF関数の複数条件設定の仕方教えてください。

    エクセル IF関数の複数条件設定について教えてください。 E1の値が下のような場合にF1に%を表示する 3200000 以上 3300000 未満の時 1.0%を表示する 3300000 以上 3400000 未満の時 1.5% 3400000 以上 3500000 未満の時 2.0% 3500000 以上 3600000 未満の時 2.5% という関数を作りたいのですが、 =IF(2200000<E15<2300000,-12.9%,(IF(2300000<E15<2400000,-10.9%))) のような形で良いかと思ったのですが、上手くいきません。 是非教えていただきたいのでよろしくお願いします。

  • 複数条件のif関数の作り方について

    下記の条件で、if関数を使って式を作ったのですが、うまく作動せずに困っています。詳しい方、お力をお貸しください。 セルA1 性別(男・女) セルB1 体脂肪率 男性で体脂肪率が10%未満→低い 男性で体脂肪率が10%以上~20%未満→標準 男性で体脂肪率が20%以上~25%未満→やや高い 男性で体脂肪率が25%以上→高い 女性で体脂肪率が20%未満→低い 女性で体脂肪率が20%以上~30%未満→標準 女性で体脂肪率が30%以上~35%未満→やや高い 女性で体脂肪率が35%以上→高い 男性 =IF(AND(A1=1,B1<10),"低い",IF(AND(A1=1,B1<20),"標準",IF(AND(A1=1,B1<25),"やや高い","高い"))) 女性 =IF(AND(A1=2,B1<20,"低い",IF(AND(A1=2,(B1<30,"標準",IF(AND(A1=2,(B1<35,"やや高い","高い")

  • エクセル IF関数 複数条件?

    いつもお世話になります IF関数で複数条件を記入する場合 現在は =IF(AND(A16="aaa",H16>=81),H16-80,IF(AND(A16="aaa",H16>=1),H16+80,IF(AND(A16="bbb",H16>=81),H16-80,IF(AND(A16="bbb",H16>=1),H16+80,H16)))) と やたらと長い条件設定になっています 結果は正しいのですが、もっとスッキリ出来る方法を教えて頂きたいのです。

  • エクセル IF関数で2つの条件設定をするにはどうすればいいでしょうか。

    エクセル IF関数で2つの条件設定をしたいと思っています。A1のセルに入力規則を設定していて、税込か税抜を選択出来る様にしています。 もしA1が税込の時はA2を0、もしA1が税抜の場合はB1*0.05(B1の5%)と表示される様にしたいと思ってます。 A2のセル設定を=IF(A1="税込",0)までは出来たのですが、その先どうやっていいのか分かりません。 ご指導宜しくお願い致します。

  • IF関数の複数分岐

    IF関数の複数分岐について質問です。 条件が多すぎて私の知識では手に負えない状態なので、どなたか教えてくださると助かります。 ・A1が○だったら● ・A1が△、かつB1が▽だったら▲÷2 ・A1が△、かつB1が□だったら▲÷4 ・上記のどれにも当てはまらない場合は0 この条件でどうにかifでクリアできませんでしょうか? それに加えて、求められた値を四捨五入し1000の位で丸めたい(単位を千)にしたいのです。 どなたか宜しくお願いいたします。

  • IF関数で複数の条件の式

    エクセルのIF関数を教えてください。 A1=B1の時、C1に1と表示 A1=B2の時、C1に2と表示 A1=B3の時、C1に3と表示 上記3つの条件以外の場合は何も表示しない 以上の条件の時にC1に入れる式を教えてください。 宜しくお願いします。

  • 複数(5つ)の条件を指定したIF関数

    IF関数を用いて以下のように場合、どのようにすればよいでしょうか。 条件は5つです。 ご教授をお願いします。 (1)A1のセルの値が300,000以上、400,000未満の場合、B1に5,000と表示 (2)A1のセルの値が400,000以上、600,000未満の場合、B1に7,500と表示 (3)A1のセルの値が600,000以上、800,000未満の場合、B1に10,000と表示 (4)A1のセルの値が800,000以上、1,000,000未満の場合、B1に12,500と表示 (5)A1のセルの値が1,000,000以上の場合、B1に15,000と表示

専門家に質問してみよう