連続フォームがあります。フォームのフィールドの 1 つが RecordID です。
そのフォームにはラベルがあり、クリックすると、VBA を介して RecordID を含むメッセージ ボックスが生成されます。
MsgBox Me.RecordID
ラベルは連続フォームの各行で再現されますが、最初のレコードのみを参照します。フォームの行ごとに RecordID フィールドが異なることがわかりますが、常に同じ結果 (この場合は 80029) が得られます。
どうしたの?
連続フォームがあります。フォームのフィールドの 1 つが RecordID です。
そのフォームにはラベルがあり、クリックすると、VBA を介して RecordID を含むメッセージ ボックスが生成されます。
MsgBox Me.RecordID
ラベルは連続フォームの各行で再現されますが、最初のレコードのみを参照します。フォームの行ごとに RecordID フィールドが異なることがわかりますが、常に同じ結果 (この場合は 80029) が得られます。
どうしたの?
Me.RecordID
レコード セレクターの黒い三角形で示されるようRecordID
に、現在のレコードの を参照します。
フォーム上のLabel
コントロールは を受け取ることができないため、Focus
別のレコードのラベルをクリックしても、現在のレコードは変更されず、同じ を取得し続けますRecordID
。Click
テキストボックス (または を受け取ることができるその他のコントロール)のハンドラーに同じコードを入れるとFocus
、現在のレコードが変更されRecordID
、そのレコードの が取得されることに注意してください。