Accessで「結合した形」を持っている場合は、これはAccessフォームがで指定され、中に保存され、フォームの「レコードソース」プロパティされた基礎となるデータソースに縛られることを意味。
- runCommand関数acCmdSaveRecord - フォームの現在のレコードを保存します:あなたは上記の「SaveBtn_Click()」メソッドで、このコードは、次のことを行います。
- Me.Requery - フォーム全体を再クエリーします。
- Me.DataForm.Requery - メインフォームの "DataForm"という名前のサブフォームを再クエリーします。
したがって、「レコードソース」と他のフォームプロパティ設定の設定に応じて、フォーム全体を「再クエリー」すると、クエリー操作によって、データソース内の新しいレコードにカーソルが移動することがあります(...それ以降のバージョンのAccessでのドラッグ&ドロップフォームデザイナツールのデフォルト設定)、 "Requery"を呼び出すと、フォームが "クリア"されていると思われます。
メモ1:「Requery」は実際にレコードを保存するため、「Requery」も呼び出す場合は明示的に「RunCommand acCmdSaveRecord」を呼び出す必要はありません。 。
注2:レコードソース(およびその他の)フォームプロパティの設定方法によっては、現在選択されているレコードを保存して更新するだけの場合もありますが、フォームが動作しているようには聞こえませんあなたが上で言ったことに基づいて)、私はそれがあなたのフォームの場合ではないと仮定しています。
注3:メインフォームに「Requery」を呼び出すと、サブフォームも再クエリーされるので、コード行もここで重複する可能性があります。 "Me.DataForm.Requery"を呼び出す理由は、サブフォームのみを再クエリし、メインフォーム全体を再クエリしない場合です。
注4:メインフォーム上の "DataForm"サブフォームは、親(メイン)フォームとは別の独自の "レコードソース"プロパティ用の別個のデータソースを持ちますので、重要ですそのフィールド値を保存するかどうかに応じて、その事実を認識します。
だから、それは言った、私はお勧めかもしれないオプションのカップルは、あなたのフォームが動作するようにしたい正確にどのように応じて、あります
あなたはフィールド値の一部を保持し、それらを使用したい場合クエリーボタンを押したときにNEW RECORDが表示された場合は、常に変数に保存しておき、変数を再クエリーした後で再度コントロールを設定することができます。保存する各値に対して個別の変数を作成し、それぞれの変数にTextBoxコントロールの値をコピーし、フォーム上のクエリーを呼び出して、クエリー後にそれらの値をTextBoxコントロールにコピーし直します。あなただけ "を作成しようとしている場合、 Private Sub SaveBtn_Click() Dim vValue1 as Variant vValue1 = txtMyTextBox Me.Requery txtMyTextBox = vValue1 End Sub
または:このコードは、次のようなものになるだろう(あなたのTextBoxコントロールの正確な名前に応じて、私は架空の名前この例では「txtMyTextBox」を使用しました) TextBoxコントロールには「DefaultValue」プロパティがあります。このプロパティは、デフォルト値として使用する値に設定できます。これらは、デザインモードまたはレイアウトモードでフォームを開き、TextBoxコントロールを選択すると、アクセスウィンドウの右側のプロパティシートから設定できます。 (まだ開いていない場合は、F4キーを押してプロパティシートを開きます)。このすべてが理にかなって、私は願って、とにかく Private Sub SaveBtn_Click() Dim iRecord as Integer iRecord = Me.CurrentRecord Me.Requery DoCmd.GoToRecord , , acGoTo, iRecord End Sub
:あなたは本当に再クエリして、あなたが以前にあった同じレコードに戻りたい場合は
しかし、あなたは以下のコードを試みることができますそれが役に立ちます。この回答についてさらにご不明な点がありましたらお知らせください。
"共有フォーム"とは何を意味し、どのフォームが静的フィールドに含まれていますか? –
私はアクセスファイルが共有フォルダにあることを意味し、複数のユーザーがファイルを使用します。私は上記の設定を達成したいフォーム "ManDC"は、静的フィールドは何を意味するのかよく分かりません。 –