- ベストアンサー
ファイルメーカー 当日日付/前日日付を返す
- 入荷の管理伝票のようなデータベースで、入荷日と伝票製作日が違う場合の日付の返し方です。
- 基本的に入荷日に伝票を作成するので、自動で作成日の日付を返すつもりだったのですが、前日の夜遅くに入荷したような場合、翌日になって伝票を作成することがあるそうで、そうなると実際の入荷日と1日ずれてしまいます。
- そこで、「入荷日フィールド」にラジオボタンのようなもので、「当日」「前日」のようなチェックをつけて、自動で前日を返すようにしたいと思います。前日の日付自体は計算で-1を返したものを定義したのですが、「作成日(当日)」と「作成日前日(前日)」を入荷日に反映する方法がわかりません。If関数を使うんだろうなぁ、と試行錯誤していますが、なにとぞ知恵をお貸し下さい。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
一昨日の伝票の入力は無く、前日と当日しか無いとして 入荷日を計算値自動入力(既存値置き換え)か計算フィールドにして式を Case(ラジオボタンフィールド="前日" ; Get(日付)-1; Get(日付) )
その他の回答 (2)
- KURUMITO
- ベストアンサー率42% (1835/4283)
回答No1です。 D列で当日や前日を選んだ時点で作成日を本日に、入荷日はD列での前日や当日の選択によって日付を自動的に表示させるのでしたらE2セルには次の式を入力して下方にオートフィルドラッグします。 =IF(D2="","",TODAY()) また、C2セルには次の式を入力して下方にオートフィルドラッグします。 =IF(E2="","",IF(D2="前日",E2-1,E2))
お礼
エクセルでの説明になるのでしょうか。 すみません、ちょっと僕には高度すぎました。 ありがとうございました。
- KURUMITO
- ベストアンサー率42% (1835/4283)
例えば次のようにしてはどうでしょう。 C1セルに入荷日、D1セルには作成日は入荷日の当日又は前日、E1セルに作成日とそれぞれ文字列を入力します。 そこでD列には当日や前日の選択ができるようにするのですがその方法は次のようにします。 D2セルから下行を範囲として選択します。 「データ」タブの「データの入力規則」をクリックして「設定」タブの入力値の種類では「リスト」を選択し、元の値の窓には 当日,前日 と入力してOKします。 これでD列のセルの▼から当日や前日を選択することができます。 その上で作成日に日付のデータを入力することで入荷日を自動的に表示させるためには例えばC2セルには次の式を入力して下方にオートフィルドラッグします。 =IF(E2="","",IF(D2="前日",E2-1,E2)) なお、E列を選択して右クリックして「セルの書式設定」から「表示形式」のタブでは「日付」から適当な日付表示を選択すればよいでしょう。
お礼
できました!!! 一昨日ということはないそうなのでこれで大丈夫です。 ありがとうございました。