- ベストアンサー
前レコードのテキストボックスと同じ値を表示させる
環境:XP,ACCESS2003 帳票形式のフォームがあります。 次のレコードの入力に移った時、前のレコードのあるテキストボックスは、同じ内容を表示させる方法がわかりません。なお、同じ内容を表示させたいテキストボックスは連結でテーブルのフィールドをコントロールソースにしています。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
1、規定値を前レコードに設定する。 サンプルコード略 2、前レコード値を表示する。 Private Sub Form_Activate() Dim Ctl As Control If Me.NewRecord Then For Each Ctl In Me.Controls If Ctl.ControlType = acTextBox Then Ctl.SetFocus SendKeys "^("")", False End If Next End If End Sub
その他の回答 (2)
- CHRONOS_0
- ベストアンサー率54% (457/838)
テキストボックスひとつだけなら 入力時にCtrl+’(7のキー) 1レコード全部なら コントロールウィザードをONにしておいてボタンをおき [レコードの操作][レコードの複製]で簡単に カーソルのある行を新規レコードにコピーする ボタンを作成できます
- O_cyan
- ベストアンサー率59% (745/1260)
考え方としては退避用変数かフィールドを作りそのレコードを入力した時点(更新後処理イベント)で入力した内容を退避用変数かフィールドに値の代入してレコードを追加か移動した時点で退避した変数を値の代入で戻す形で良いと思います。 簡単にやるには各フォームのコントロールの更新後処理に入力された内容を代入してしまう。 Me!コントロール名.DefaultValue = Me!コントロール名 のようにすればセット出来ます。
お礼
大変参考になりました。現在取り組み中ですが私のような者でもうまくいきそうです。ありがとうございました。
お礼
コードまで書いていただきありがとうございました。 頑張ってやってみます。