テキストを非連結にしてVBAにて帳票フォームを表示しようと作成しましたが、
レコードは rs.MoveNext で移動できているのですが、
表示が1行でしかできないです。 フォームの設定も帳票フォームにしてあるので
VBAがおかしいのですが、どこを修正すれば すべてのレコードを帳票で表示できるのかわかりません。
すみませんがどなたか教えていただけないでしょうか?
Private Sub Form_Load()
Dim db As DAO.Database
Dim rs As DAO.Recordset
Set db = CurrentDb
Set rs = db.OpenRecordset("SELECT * FROM T_伝票情報")
If rs.EOF = False Then
Do Until rs.EOF
Me.txb作業No = rs!作業No
Me.txb名称 = rs!名称
Me.txb発行者 = rs!発行者
rs.MoveNext
DoCmd.GoToRecord , , acNewRec
Loop
End If
rs.Close
db.Close
End Sub
新しいフォームを作った後、テキストボックスを全て選択して表形式に変更しましたか?
F_伝票番号を作って帳票形式で保存しないの?わざわざコードに書き起こすのは、何か理由があるから?
帳票フォームで複数レコードを表示するには、連結フォームでないと無理ですが、
フォームはテーブルまたはクエリと連結していますか。
(レコードソースにテーブルまたはクエリが設定してありますか。)
もし、非連結フォームなら、1レコード分しか表示できません。
Do Loopでループさせても、おなじテキストボックスを上書きしているだけです。