Microsoft Access 掲示板

VBAによる帳票フォームの表示について

3 コメント
views
4 フォロー

テキストを非連結にして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
よし
作成: 2023/07/17 (月) 06:35:59
通報 ...
1
りんご 2023/07/17 (月) 07:31:45 935bc@0e907

新しいフォームを作った後、テキストボックスを全て選択して表形式に変更しましたか?

2
りんご 2023/07/17 (月) 16:32:55 935bc@0e907

 F_伝票番号を作って帳票形式で保存しないの?わざわざコードに書き起こすのは、何か理由があるから?
 

3

帳票フォームで複数レコードを表示するには、連結フォームでないと無理ですが、
フォームはテーブルまたはクエリと連結していますか。
(レコードソースにテーブルまたはクエリが設定してありますか。)

もし、非連結フォームなら、1レコード分しか表示できません。
Do Loopでループさせても、おなじテキストボックスを上書きしているだけです。