• ベストアンサー

○ × -を表示したい

D9とE9は 14時という時間帯は最大1時間=60分という意味です。 C9には、14時の合計時間が書いてあります。 本日の16時に予定しているの時間帯の「デッサン」と「映画鑑賞は」合計すると1:30と、1:00を越えたので D6とD7は×が表示されました。 (1)A列に 「本日」かつM列の時間帯の合計が60分を越えたらD列は「×」を表示したい (2)A列に 「本日」かつM列の時間帯の合計が60分を越えなかったらD列は「○」を表示したい (3)A列に 「本日」ではないものであればD列は「-」を表示したい ------------------------- 質問1  本日と書いてある 合計時間だけを表示するには、C9にはどんな数式が必要ですか? 質問2 (1)(2)(3)の3つをすべて対応するために D2にはどんな数式が必要ですか?

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

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

質問1ですが >本日と書いてある 合計時間だけを表示するには、C9にはどんな数式が必要ですか? だけですか?表にあるC9の答えと違うのですが。 A列が本日で M列が A9(14)の行の D列の合計時間 ではないのでしょうか? 複数の条件で合計を行うので、エクセルのバージョンによりますが、2007以降であれば SUMIFS関数があります。 C9セルに =SUMIFS(D$2:D$7,A$2:A$7,"本日",M$2:M$7,A9) と入れて下までコピーしてみてください。 質問2も整理してみました。 A列が本日の場合は 次の処理  M列の値を、下部分(A9~E11)の表を参照して   C列の合計時間がE列の時間を超えたら ×   それ以外は             〇 A列が本日以外であれば ― という事でしょうか 最初の条件は If(A2="本日",次の条件の式,"-") (A9~E11)の表を参照して   C列の合計時間がE列の時間を超えたら ×   それ以外は             〇 この部分がVlookup関数を使ってみましょう。 仮にC2セルに =VLOOKUP(M2,A$9:E$11,3,FALSE) 下へコピーして、C列時間だでます。 次に、式を =VLOOKUP(M2,A$9:E$11,5,FALSE) にして、コピーするとE列の時間が得られます(この場合、比較するために E9セルには 60と数値を入れるのではなく 1:00 とシリアル値で入れるべきですね。 これらが理解できれば =IF(A3="本日",IF(VLOOKUP(M3,A$9:E$11,3,FALSE)>VLOOKUP(M3,A$9:E$11,5,FALSE),"×","○"),"-") といった式が組み立てられるようになります。 質問を勝手に解釈していますが、間違っている場合でも 同じ手法で出来そうな気がします。

ryujixryuj
質問者

お礼

いま アドバイスを元に、いろいろ操作していたら出来るようになりました。 ありがとうございます。とても参考になりました

ryujixryuj
質問者

補足

ありがとうございます。 質問2ですが =IF(A3="本日",IF(VLOOKUP(M3,A$9:E$11,3,FALSE)>VLOOKUP(M3,A$9:E$11,5,FALSE),"×","○"),"-") を当てはめると、 参照場所が違う気がしたので =IF(A2="本日",IF(VLOOKUP(M2,A$9:C$11,3,FALSE)>VLOOKUP(M2,A$9:E$11,5,FALSE),"×","○"),"-") にしましたが、やはりこれも正常な動作はしていないようでした。 せっかく回答頂いたのですが、残念でした。 まだ、あれこれやっていますが、やはり答えがでません