• ベストアンサー

<エクセル>複数の条件下での計算式

是非皆さんのお知恵を貸してください エクセルでA1区分(新規・終了)、A2日付、A3基本金額、A4当月請求額、A5翌月請求額のセルがあります 1.区分:新規 日付1~15の場合は当月、翌月とも基本金額の100%の金額 2.区分:新規 日付16~31の場合は基本金額に対して当月50%、翌月100%の金額 3.区分:終了 日付1~15の場合は基本金額に対して当月50%、翌月計算なし 4.区分:終了 日付16~31の場合は基本金額に対して当月100%、翌月計算なし という計算をさせるにはどのようにすればよいでしょうか

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

  • ベストアンサー
  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.6

>教えていただいた数式を入れてみたのですがこれだと継続を選んだ時も当月が50%の金額になってしまいます・・・・  失礼致しました。 >A1にもう一つ"継続"という区分を追加して新規と同じ結果をだすことは可能でしょうか? とありましたので、混乱して間違えてしまいました。  A4セルに入力する数式は次の様なものとして下さい。 =IF(AND(OR(A1="新規",A1="継続",A1="終了"),ISNUMBER(1/DAY(A2)/A3)),A3*IF(OR(AND(A1="新規",DAY(A2)<16),AND(A1="終了",DAY(A2)>15),A1="継続"),1,0.5),"")

その他の回答 (5)

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.5

回答No2です。 継続も新規と同じでしたら次の式にします。 =IF(COUNTA(B$1:B$2)<>2,"",IF(OR(B$1="新規",B$1="継続"),IF(ROW(A1)=1,IF(DAY(B$2)<=15,B$3,B$3*0.5),IF(ROW(A1)=2,IF(DAY(B$2)<=15,"",B$3))),IF(B$1="終了",IF(ROW(A1)=1,IF(DAY(B$2)<=15,B$3*0.5,B$3),IF(ROW(A1)=2,"")),"")))

回答No.4

D3 =c3*((a3="新規")*((day(b3)<=15)*100%+(15<day(b3))*50%)+(a3="継続")*100%+(a3="終了")*((day(b3)<=15)*50%+(15<day(b3))*100%)) E3 =c3*((a3="新規")+(a3="継続")) >継続の場合は当月も翌月も100%の金額にするにはどうすればよいでしょか 典型的な後出しですね。

JJ_PARADOX
質問者

お礼

お知恵を出していただき本当にありがとうございました^^

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.3

>5.区分:継続 日付に関係なく基本金額に対して当月100%、翌月計算100% >と計算したいのですがどのようにすればよいでしょうか  それでしたら、A4セルには次の数式を入力して下さい。 =IF(AND(OR(A1="新規",A1="継続",A1="終了"),ISNUMBER(1/DAY(A2)/A3)),A3*IF(OR(AND(OR(A1="新規",A1="継続"),DAY(A2)<16),AND(A1="終了",DAY(A2)>15)),1,0.5),"")  又、A5セルには次の数式を入力して下さい。 =IF(AND(OR(A1="新規",A1="継続"),ISNUMBER(1/DAY(A2)/A3)),A3,"")

JJ_PARADOX
質問者

お礼

kagakusuki様 度々のレス本当にありがとうございます^^ 教えていただいた数式を入れてみたのですがこれだと継続を選んだ時も 当月が50%の金額になってしまいます・・・・ 継続の場合は当月も翌月も100%の金額にするにはどうすればよいでしょか

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.2

A1セルからA5セルまでがお示しの項目名が入力されているとして、B列に対応するデータがB3セルまで入力されているとしたらB4セルには次の式を入力してB5セルまで下方にドラッグコピーします。 =IF(COUNTA(B$1:B$2)<>2,"",IF(B$1="新規",IF(ROW(A1)=1,IF(DAY(B$2)<=15,B$3,B$3*0.5),IF(ROW(A1)=2,IF(DAY(B$2)<=15,"",B$3))),IF(B$1="終了",IF(ROW(A1)=1,IF(DAY(B$2)<=15,B$3*0.5,B$3),IF(ROW(A1)=2,"")),"")))

JJ_PARADOX
質問者

お礼

早速のご回答ありとうございました。 おかげさまでバッチリできました^^ 厚かましいお願いなのですが一つ追加で教えていただきたいことが増えてしまいました。 A1にもう一つ"継続"という区分を追加して新規と同じ結果をだすことは可能でしょうか?

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.1

 A4セルには次の数式を入力して下さい。 =IF(AND(OR(A1="新規",A1="終了"),ISNUMBER(1/DAY(A2)/A3)),A3*IF(OR(AND(A1="新規",DAY(A2)<16),AND(A1="終了",DAY(A2)>15)),1,0.5),"")  又、A5セルには次の数式を入力して下さい。 =IF(AND(A1="新規",ISNUMBER(1/DAY(A2)/A3)),A3,"")

JJ_PARADOX
質問者

お礼

早速のご回答ありとうございました。 おかげさまでバッチリできました^^ 厚かましいお願いなのですが一つ追加で教えていただきたいことが増えてしまいました。 A1にもう一つ"継続"という区分を追加して新規と同じ結果をだすことは可能でしょうか?

JJ_PARADOX
質問者

補足

度々もうしわけありません。上記内容の一部訂正です 5.区分:継続 日付に関係なく基本金額に対して当月100%、翌月計算100% と計算したいのですがどのようにすればよいでしょうか

関連するQ&A