dポイントプレゼントキャンペーン実施中!

ACCESSに入力されたデータの、整合性を確認する業務の中で、確認した当日の日付を、「確認日」として整合性を確認したデータの最後に入力しています。今は、データ1件毎に、確認日をテンキーで入力しているのですが、これを、自動的に(例:チェック欄をONにすると、ON時の当日の日付が入るなど)行う方法はありますか?

A 回答 (4件)

補足の作業によって、クリック時のSub プロシージャが開きます。


そこで、

1、私の書いたコードをそっくりコピーします。
2、[チェック]と[確認日]を実際のフィールド名に訂正します。
3、メニュー[デバッグ]-[XXのコンパイル]をクリックしエラーの有無を確認します。

エラーが発生しなければOKです。

<ルーチン>

・[確認日]に日付を代入しないで規定値を設定するのがポイントです。
・次のレコードを登録する場合、チェックがオンであれば[確認日]に日付が自動代入されるからです。
・もちろん、チェックをオフにすれば、日付は代入されません。

このような仕組みです。

*頑張って下さい。
    • good
    • 0
この回答へのお礼

有難う御座います。マクロ設定完了しました。参照するフィールドの指定が間違っていました。また、宜しく御願いします。

お礼日時:2006/02/01 13:39

こんにちわ



更新クエリーによる方法
1.テーブルに項目「チエツク」を追加
(yes no型 の項目で定義)
更新クエリーを2つ新作
・チエツクがyes なら date()命令で当日データーを入れる
・チエツクを全レコード no にする
この2つのクエリーを実行するマクロを新作する
そのマクロを動かすようにフオームにマクロボタンを新設する

2.フオームへ「チエツク」を表示させる
3.チエツクマークをフオームで入力
4.2ツのクエリーを実行(マクロボタンを押す)

イベントプロシジアーによる方法
フオームの(明細行)どこかの項目のところで
クリック時の時のイベントプロシジアー内に
me.[確認日]=date()
という命令をいれておく
これにより、当該行をクリックしたときに
当日日付がはいるはずですが
(日付の属性は日付Sで)
    • good
    • 0
この回答へのお礼

有難う御座います。みなさんのおかげで解決できました。また、宜しく御願いします。

お礼日時:2006/02/01 13:40

チェック欄のプロパティの更新後で


Private Sub チェック0_AfterUpdate()
If IsDate([確認日]) Then Exit
If [チェック0] = True Then [確認日] = Date
End Sub
これでチェック時に確認日に日付が入ります。
ただし、過去に入力済みの場合は更新されないようにしています。
    • good
    • 0
この回答へのお礼

有難う御座います。みなさんのおかげで解決できました。また、宜しく御願いします。

お礼日時:2006/02/01 13:41

Option Compare Database


Option Explicit

Private Sub チェック_Click()
  If Me.チェック Then
    Me.確認日.DefaultValue = "=DATE()"
  Else
    Me.確認日.DefaultValue = ""
  End If
  Me.Refresh
End Sub

では?

この回答への補足

回答有難う御座います。とりあえずそのまま入れてみたのですが、私自身、プログラム自体あまり良く理解出来ていないせいか、うまく行きませんでした。そこで、自分なりに色々やってみて、マクロを組む方法でチャレンジしています。
方法は、チェック欄のプロパティ内にある、クリック時のイベントにある、ビルダーを選択しマクロを組む方法です。
マクロの内容
アクション 「値の代入」
アイテム  「確認日」
式     「=Date()」
という内容で組んだのですが、エラーが発生しています。

エラー内容
「このオブジェクトには、オートメーションオブジェクト’文書処理未完了分’(←これはチェック欄と確認日があるクエリの名前です)は含まれません。 オブジェクトのプロパティを設定するか、メソッドを実行するVisual Basic プロシージャを実行しようとしましたが、これらのプロパティまたはメソッドが使用出来ません。」

マクロを組み方などで何か問題あるでしょうか?

補足日時:2006/02/01 12:03
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!