[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『セルに表示させる内容を条件によって変える方法』(ちぃちゃん)
お世話になります。
普段は何も表示させていないセルに、ある条件になると表示させたいと思っています。
条件が1つの時は思い通りにできたのですが、条件が複数になった時に思い通りにならず 困っています。
|[A] |[B]|[C]|[D]|[E] [1]|2014/8/25 21:47| | 1| |=IF(A1<NOW(),C5,IF(C5="",C4,"")) [2]| | | 2| | [3]| | | 3| | [4]| | | 4| | [5]| | | 5| |
上記の様な時、
A1の日時を過ぎたら、E1にC5セルの内容を表示させたいのですが、 C5がブランクの時は、C4のセルを表示。さらにC5もC4もブランク の時はC3のセルを、C5もC4もC3もブランクの時は・・・といった 感じで表示させたいと思っています。
上記E1の式では、A1の日時が過ぎればE1にC5セルの内容を表示させる事は 出来たのですが、A1の日時を過ぎる前でもC5のセルがブランクならC4セル の内容を表示させてしまいます。又、A1の日時を過ぎた時に、C5セルが ブランクなら0と表示されてしまいます。
どの様な数式にすればいいかご教授頂きたく、宜しくお願い致します。
< 使用 Excel:Excel2007、使用 OS:Windows7 >
条件1 現在時刻(エクセルシートを開いたときの時刻)がセルA1の時刻を過ぎていなければE1=" " → IF(A1 >= NOW()," ",
条件2 セルC5、C4、C3、C2が空白ならばE1=C1 → IF(and(C5=" ",C4=" ",C3=" ",C2=" "),C1,
条件3 セルC5、C4、C3が空白ならばE1=C2 → IF(and(C5=" ",C4=" ",C3=" ",C2,
条件4 セルC5、C4が空白ならばでE1=C3 → IF(and(C5=" ",C4=" "),C3,
条件5 セルC5が空白ならばE1=C4 → IF(C5=" ",C4,
条件6 E1=C5
たぶんこの条件1から6までを直列につなげると、とりあえずはそれなりの数式には
なるかと思います。
と思ったらすでに回答が出ていましたね。
(ryopo^2) 2014/08/25(月) 22:51
C列が連続データで空白なしなら
=IF(A1<NOW(),INDEX(C1:C10,COUNT(C1:C10)),"")
C列途中に空白ありなら
=IF(A1<NOW(),LOOKUP(1,0/(C1:C10<>""),C1:C10),"") ※一番下のデータを返す。 (GobGob) 2014/08/26(火) 07:52
こんばんは。
wisemac21様 ブランクではない時(<>"")は、こういう使い方をするんですね。 勉強になりました。 また、思い通りの結果が得られました。ありがとうございました。
ryopo^2様 頂いたヒントを元に考えた結果下記にたどり着きました。 =IF(A1<NOW(),IF(AND(C5="",C4="",C3="",C2=""),C1,IF(AND(C5="",C4="",C3=""),C2,IF (AND(C5="",C4=""),C3,IF(AND(C5=""),C4,C5))))) ほぼ思い通りの結果が得られたのですが、A1の日時がくるまではブランクにする という処理をどこにどう入れればいいか分からず「FALSE」が表示されます。 A1の日時がくるまではブランクにするという処理をどこかに入れれば対応可能 でしょうか?
GobGob様
こちらも思い通りの結果が得られました。ありがとうございました。 INDEXとCOUNTの合わせ技・・・私にはまだまだ難しすぎますが、 頑張って理解できる様にしたいと思います。
皆さん、ありがとうございました。
(ちぃちゃん) 2014/08/27(水) 00:03
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.