- ベストアンサー
accessで日付を簡単に入力するには?
アクセスで組まれたプログラムで入金確認をしています。 一々、日付を手で入力しているので大変です。(20060430の様に) どこかのキーに日付を登録して簡単に入力できる様にする方法はないでしょうか? エクセルでは、ツールのオートコレクトで*キーに日付を登録する という方法で上手くいったのですが・・ アクセスでも同様なことをする方法はないですか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
s_husky です。 エクセルは、エクセルです。 問題は、ないと思います。 アクセスの場合、 Private Sub Form_Load() Me.日付規定値 = Date End Sub Private Sub 日付_Exit(Cancel As Integer) If Len(Me.日付 & "") = 0 Then Me.日付 = Me.日付規定値 End If End Sub などが、一般的では(?)と思ったに過ぎません。 この場合、[日付規定値]は、フォームヘッダーか日付欄の横に配置し、TAB移動を禁止すれば良いでしょう。 入力欄と区別するために背景色を水色にでもすれば完璧です。 Private Sub 日付_Enter() If Len(Me.日付 & "") = 0 Then Me.日付 = Me.日付規定値 End If End Sub との違いは、入力をキャンセルして規定値に戻しやすい方法か否かということです。 まあ、このように、アクセスはプログラマー的発想に軸足があると思います。
その他の回答 (2)
1、規定値を利用する。 2、前のレコードの値を利用する。 1は、規定値に当日でも設定し、日付が更新されたら規定値を更新します。これで、日付の入力は、規定値と違う時のみになります。 2も、基本的には1と同じですが規定値を設定しないとことが違います。日付欄が空値であればプログラムで[Ctrl][Shift]["]をキー送出すれば、前レコードで入力されている日付が自動入力されます。1に同じという理由です。 ※私は、入金伝票オープニング(フォーム)を用意し、カレンダーで日付等を予め選ばしています。その日付をOpenArgsに送り、日付入力欄の横に表示しています。ヌルのまま{Enter}が押されたら、それを代入しています。<ヌルなら規定値>これは、アプリケーション全体で統一すべき作法の問題です。 ※いずれも、ユーザが混乱しないように、作法を統一することが必要です。 <*キーに日付を>は勧めできません。
補足
*キーに日付は、エクセルで行う場合には大丈夫でしょうか? 何かおこってしまったら如何しようと心配です。 お手数をおかけして、申し訳ありませんがご教授頂けないでしょうか?
フィールドの型が「日付時刻」型であれば 4/1 入力で 2006/04/01 に、自動的になります。こういうことではないのでしょうか?
お礼
ご回答ありがとうございます。 早速試してみたいと思います。
お礼
ご親切にありがとうございます。 とても勉強になります。