仕事のスケジュール管理をexcelで行っています。
excel関数について教えてください。
A B C D E
1 2008/10/1 2008/10/2
2作業1 2008/10/1 2008/10/10 (1) (2)
3 2008/9/29 (3) (4)
補足:
A2:作業名(作業1)
B2:開始予定日(200//10/1)
C2:終了予定日(2008/10/10)
B3:開始実績日(2008/9/29)
C3:終了実績日(未記入)
D1、E1:実日(2008/10/1、2008/10/2)
(1)(2)実日が開始予定日から終了予定日の範囲にある場合は□を表示。
(1)「=IF(D$1>=$B2,IF(D$1<=$C2,"□",""),"")」
(2)「=IF(E$1>=$B2,IF(E$1<=$C2,"□",""),"")」
(3)(4)実日が開始実績日~終了実績日の範囲にある場合は■を表示。
(3)「=IF(D$1>=$B3,IF(D$1<=$C3,"■",""),"")」
(4)「=IF(E$1>=$B3,IF(E$1<=$C3,"■",""),"")」
上記例の場合、開始予定日より前に作業1を開始しているため、「仕掛中」です。しかし、上記(3)(4)の関数では■が表示されません。
やりたいことは、
仕掛中の場合は■を表示したいのですが、関数の指定方法がわかりません。
是非とも解決策を教えていただきたく、御教授の程宜しくお願い致します。
尚、excel関数で実現したいという制約があります。
No.5
- 回答日時:
> 終了実績日を記入したところ、終了実績日の前日までに
> ■が表示される状態であることを確認しました。
> 因みに、min関数をmaxにしたところ、終了実績日の翌日
> まで■が表示されてしまいます。
入力ミスがありますね。私は動作確認してから回答しています。E3
の数式は=if(and(E$1>=$B3,E$1<=min($C3,today())),"■","")で間
違いありません。実績日が未入力なら今日まで■を表示、過去の日
付が実績日として入力されていれば、実績日まで■を表示、実績日
が未来でも今日までしか■は表示されないという仕様です。
上記の数式を、別のセルに入力してませんか。自分の列の日付を参
照していないような臭いがしますよ。
参考URL:http://ponyo.no-ip.org/uploader0/src/01P0281.png …
No.3
- 回答日時:
D3: =IF(D$1>=$B3,IF(D$1<=($C3+2958465*($C3="")),"■",""),"")
非常にわかりやすい端的な御回答ありがとうございます。
御回答の関数でテストした所、
終了実績日を記入した場合は何の問題もなく、想定通りの結果を得ることができました。ありがとうございます。
終了実績日を記入しない場合、関数が定義されているセル全てに■が表示されてしまいました。
■は作業が仕掛中であることを表している意味も含んでいますので、まだ終わっていない作業の進捗状況が実日を超えて■が表示されてしまうのは少々理想から離れてしまいます。
終了実績日を記入していない場合は、実日まで■が表示される、
終了実績日が記入されている場合は、終了実績日まで■が表示される、というのが理想です。何かアイデアが御座いましたら、追加質問で心苦しいのですが、御教授いただけたらと思います。何卒御回答の程宜しくお願い致します。
No.2
- 回答日時:
> (3)「=IF(D$1>=$B3,IF(D$1<=$C3,"■",""),"")」
> (4)「=IF(E$1>=$B3,IF(E$1<=$C3,"■",""),"")」
>
> 上記例の場合、開始予定日より前に作業1を開始しているため、「仕掛中」です。しかし、上記(3)(4)の関数では■が表示されません。
終了実績日が空欄の状態で、IF(D$1<=$C3,"■","")やIF(E$1<=$C3,"■","")がどういう結果になるのか、つまりは、D$1<=$C3やE$1<=$C3がどんな判定値になるのかを理解しましょう。
No.1
- 回答日時:
ポイントは、終了実績がない場合にいつまで■を書くのかですね。
そこの判断がないから単純に日付の大小を比べて、C3がブランクだ
と何も書けない。
たとえば今日は書くけど明日は書かないとしましょうか。妥当です
よね。その場合、該当列の日付(E$1など)が終了実績もしくはtoday
関数より前なら■を書けばいいでしょう。ここで、終了実績は絶対
に明日以降の日付にならないこととexcelのmin関数は空白セルを無
視することを考慮すると、上記の条件は E$1<=min($C3,today())と
書けますね。
で、ついでなのでif関数の入れ子を見直して、
=if(and(E$1>=$B3,E$1<=min($C3,today())),"■","")
てな感じですかね。
御回答ありがとうございます。
早速テストしてみました。
終了実績日を記入しない場合は何の問題もなく理想通りの結果が得られました。
終了実績日を記入したところ、終了実績日の前日までに■が表示される状態であることを確認しました。
因みに、min関数をmaxにしたところ、終了実績日の翌日まで■が表示されてしまいます。
終了実績日当日まで■を表示するのが理想なのですが、何か対策は御座いますでしょうか?
重ねての質問で大変申し訳ありませんが、上記問題を解決する方法について何卒御教授いただければ幸いです。御回答の程宜しくお願い致します。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/06 17:46
- Excel(エクセル) ExcelのIF関数について 4 2023/05/24 12:54
- Excel(エクセル) 表示形式、文字列セル(列)に数式を入力するには マクロ 1 2022/09/18 10:53
- Visual Basic(VBA) ファイル全てを .xlsm に変更したところ、プログラムが途中で落ちてしまっています 17 2022/12/07 12:03
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/01/23 11:02
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/08/09 10:33
- Excel(エクセル) Excel VBAどこが間違ってますか? 4 2023/07/17 10:04
- Excel(エクセル) Excelで行削除をすると… 1 2023/07/26 11:57
- Visual Basic(VBA) Excelのマクロコードについて教えてください。 1 2022/03/27 13:25
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセル初心者です 関数の入れ...
-
【関数】先頭だけにある、半角...
-
エクセル 白黒印刷で白線を印刷...
-
Excelのチェックボックスの使い...
-
【関数】適切な文字数の数字を...
-
Excelのpivotについて質問です
-
Excel ピボットテーブルで日付...
-
LOOKUP関数を使えばいいのでし...
-
エクセル関数を教えてください
-
エクセルのセルに同じ大きさの...
-
UNIQUE関数が使えないバージョ...
-
excelの不要な行の削除ができな...
-
エクセルで「-0.0」と表示さ...
-
時間によってファイル名が変わ...
-
WPS OFFICEでの縦書きについて
-
エクセルの関数について教えて...
-
Aというブックの1というシート...
-
【マクロ】シート名を取得する...
-
VBA Private Sub Worksheet_Cha...
-
VBA、Excelのworkbook.open に...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel 2019 のピボットテーブル...
-
[関数得意な方]教えて下さい・...
-
Excelにてある膨大なデータを管...
-
[関数について]わかる方教えて...
-
Excel初心者です。 詳しい方、...
-
excelの不要な行の削除ができな...
-
エクセル関数に詳しい方教えて...
-
INDIRECTを使わず excelで複数...
-
[オートフィルタ]で抽出された...
-
エクセルの神よ、ご回答を! エ...
-
エクセル関数に詳しい方、教え...
-
各ページの1番上の表示について
-
Excelで写真のような表を作った...
-
エクセルで不等号記号(≠)が上に...
-
数学 Tan(θ)-1/Cos(θ)について...
-
Excel 2019 は、SPILL機能があ...
-
Excelで全角を半角にしたいので...
-
条件付き書式を教えてください
-
Excel フィルターを掛けた状態...
-
[オートフィルタ]の適用範囲の...
おすすめ情報