想定するシチュエーション
毎日、ルーチンで一定の時間に、帳票を出力するが、EXCEL関数により、その時間によってメッセージを変えたり、処理をかえたりすることができないか。
活用の概念
1ファイルに1日から31日までのワークシートがあり、ワークシート名はyyyymmddの形式となっている。
毎日、時間に応じて帳票を出力する際に、その時間に応じてセルの値を設定する関数を考えた。
下記の関数は次の3条件により結果を判定する。
・当日のWSではないか、当日であるが16時30分過ぎである→確確
・当日で、15時29分を過ぎており、16時30分以前である→途中版
・当日で、15時29分以前である→開始後
=+IF(TEXT(TEXT(RIGHT(CELL("filename",A1),LEN(CELL("filename",A1))-FIND("]",CELL("filename",A1))),"0000!/00!/00"),"yyyymmdd")<>+TEXT(TODAY(),"yyyymmdd"),"確確",IF(TIME(HOUR(NOW()),MINUTE(NOW()),SECOND(NOW()))>TIME(21,30,0),"確確",IF(TIME(HOUR(NOW()),MINUTE(NOW()),SECOND(NOW()))>TIME(15,29,0),"途中","開始後")))
(注)新規EXCELファイルで試験する場合には、一旦適当な名前で保存したあとに上記関数をお試しください。
(注)時間とか判定結果テキストは適宜変更してください。
(注)式の詳細説明は省略します。
市川大野駅-Wikipedia-から南船橋駅-Wikipedia-まで歩いてみた。
初めて歩く経路であったが、Google Mapsの音声ガイダンスで問題なく移動できた。
途中の船橋橋に素敵な彫像を発見した。