これは複雑です。私はアクセスにあまり慣れていない、私はプログラマーです(私は自分自身でこれをより困難にし、 "簡単な"答えを見ない)かもしれません。問題:Access 2007、VBA、親子フォーム、レコードセット更新不可
(例)を考えてみましょう: 私たちはライブラリデータベースを持っています。私は本の特定のコピーを持っています。私の本は、いくつかの状態を持つことができます:チェックアウト、棚で、破壊、奇妙な/付箋/コミッションからのにおい....私はAccessに2つのフォームが必要です。私の本の基本情報と実際にステータスを更新するためのもの。ステータスが変更されると、記録する必要があるデータ量が膨大になるため、これには別個のフォームが必要です。本の書式自体は基本情報とレンタル履歴用の小さなサブフォームで構成されています。ブックフォームには現在のステータスが含まれている必要があります。私の実際のステータステーブルにはstatusid、bookid、timestampがあります。
今、私はAccessに問題があるとは知らなかったので...私の本とステータスの両方のフォームをアンバインドして、VBAのrecorset/queryで埋めました。しかし、私は2つを接続しようとしたときに私に叫んだ。それは私に言った "束縛されていない"。私はそれが問題ないと判断し、クエリを実際のフロントエンドのAccess Queryセクション(左側)に移動し、vbaから外してフォームを適切にバインドしました。でも今。私のレコードセットは更新できないと言います。私は、本の現在のステータスを取得するために、ジョインと入れ子の選択ステートメントなどを使用したと仮定します。私はそれらのテキストフィールドを変更することができるだけで、挿入/更新を自分で作成することができます。私はネット上でテーブルを作成するということをいくつか見つけましたが、マルチユーザ環境では動作しません。ブックフォームが開いているときにユーザーがボタンをクリックしてブックのステータスを変更し、そのステータスフォームを保存/閉じるとすると、ブックフォームを再クエリして更新されたステータスを表示できるようにする必要があります。
だから私は何をしますか?
ああ:
はこのような何かを試してみてください。書籍の書式をブックテーブルにバインドするだけで、そのテーブルにない追加のデータ(現在のステータスなど)はvbaクエリで取得する必要がありますか? Form_Current()を使ってそれを処理しますか? –