『旬単位のガントチャート作成』(にとりん)
以下のように旬単位でガントチャートを作成し、各タスクの開始日(B6以下B列)・終了日(C6以下C列)の期日を入力すると???の部分が塗りつぶされるようにしたいと考えております。
※B1:C2は行程全体の開始日・終了日を表示したものです。
D6以下塗りつぶしの条件付き書式に入れる数式を教えて頂きたいです、
上旬・中旬・下旬の定義は、シンプルに以下の通りです。
上旬:毎月1日〜10日
中旬:毎月11日〜20日
下旬:毎月21日〜各月末
A B C D E F G H 1 開始日 4/1 2 終了日 8/31 3 2024年 4 4月 5月 5 タスク 開始日 終了日 上旬 中旬 下旬 上旬 中旬 6 A作業 4/1 4/25 ??? ??? ??? 7 B作業 4/11 5/5 ??? ??? ??? 8 C作業 4/16 4/28 ??? ??? 9 D作業 4/23 5/13 ??? ??? ??? 10 E作業 11 … 12
宜しくお願い致します。
< 使用 Excel:Microsoft365、使用 OS:Windows10 >
D5:4/1,E5:4/11,F5:4/21,G5:5/1・・・としてもよいのなら
D6に条件付き書式を「数式」で = で($B$6<E5)*($C$6>=D5)=1 右にフィル ではいかがでしょうか?
体裁はこのままでという条件でしたら思いつきません。
(jjj) 2024/02/19(月) 13:33:16
>体裁はこのままでという条件でしたら思いつきません。 と書きましたが、
上の式のE5,DEの部分をC1の日付と列番号から求めさせれば、体裁はそのままでいけると思います。
=($B$6<EDATE($C$1,INT((COLUMN()-3)/3))+MOD((COLUMN()-3)*10,30))*($C$6>=EDATE($C$1,INT((COLUMN()-4)/3))+MOD((COLUMN()-4)*10,30))=1
(jjj) 2024/02/19(月) 14:59:14
上の式のE5,DEの部分 → 上の式のE5,D5の部分 の間違い (jjj) 2024/02/19(月) 15:01:16
私の提案は、当該セル(上旬、中旬、下旬)が指定した開始日と終了日の間にあるか否かを判定し、 条件を満たしていれば塗りつぶすというものなので、どこかに日付データが必要となります。
「D5:4/1,E5:4/11,F5:4/21,G5:5/1・・・としてもよいのなら」と書いたのは、上旬、中旬、下旬という 表記ではなく判定のための日付データをそのセルの値とするという意味でした。
なので、後からの数式を条件付き書式に設定すれば、体裁はそのままでOKだと思います。 若しくは、日付データ用の行を1行追加して、非表示するなども考えられますが・・・
(jjj) 2024/02/19(月) 17:20:54
(にとりん) 2024/02/19(月) 17:49:30
=($B$6<EDATE($C$1,INT((COLUMN()-3)/3))+MOD((COLUMN()-3)*10,30))*($C$6>=EDATE($C$1,INT((COLUMN()-4)/3))+MOD((COLUMN()-4)*10,30))=1 をばらして考えてればお分かりになると思いますが、
EDATE($C$1,INT((COLUMN()-3)/3))+MOD((COLUMN()-3)*10,30))について、、 D列ならINT(COLUMN()-3)/3)は、INT((4-3)/3) → 0 +MOD((COLUMN()-3)*10,30))は、MOD((4-3)*10,30) → 10 つまり、EDATE(2024/4/1,0)+10 → 2024/4/11
同様にEDATE($C$1,INT((COLUMN()-4)/3))+MOD((COLUMN()-4)*10,30))は、 EDATE(2024/4/1,0)+0 → 2024/4/1
B6が2024/4/11より小さく、2024/4/1以上であれば、TRUE*TRUEで[1]を返すので、塗りつぶし対象となる。
したがって、列を挿入すれば、-3,-4の箇所も変更する必要があります。
とここまで書いてなんですが、私なら参照用の行を挿入して、非表示にすると思います。
(jjj) 2024/02/19(月) 21:42:05
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.