[英]Debug.Print all data in a table
我正在嘗試使用記錄集代碼循環遍歷表中的所有字段並調試。打印它們的值和字段名稱的順序你自然會讀取表,即從左到右跨列然后到下面的行
我已經完成了我想做的事情,但只針對第一行。 這是代碼:
Sub RecordSets()
Dim db As Database
Dim rs As Recordset
Dim i As Long
Set db = CurrentDb
Set rs = db.OpenRecordset("tbl1")
For i = 0 To rs.Fields.Count - 1
Debug.Print rs.Fields(i).Name
Debug.Print rs.Fields(i).Value
Next
rs.Close
db.Close
End Sub
立即 window 產生以下結果:
Category
Clothing
Item
Shirt
Price
5
這是頂行,完全符合我的要求。 但是我無法讓任何代碼為其他行完成完全相同的事情。 我 99% 確定我需要將 Do Until.EOF 循環與 For...Next 循環結合使用,但無論我嘗試什么都無法獲得結果,或者我在無限查詢中鎖定了訪問權限。
謝謝你的幫助
未經測試:
Sub RecordSets()
Const SEP as String = vbTab
Dim db As Database
Dim rs As Recordset, numFlds As Long
Dim i As Long, s As String, sp as string
Set db = CurrentDb
Set rs = db.OpenRecordset("tbl1")
numFlds = rs.Fields.Count
'print the headers (field names)
For i = 0 To numFlds - 1
s = s & sp & rs.Fields(i).Name
sp = SEP '<< add separator for subsequent items
Next
Debug.Print s
'print the data
sp = "" '<< clear the separator
Do While Not rs.EOF
For i = 0 To numFlds - 1
s = s & sp & rs.Fields(i).Name
sp = SEP
Next
Debug.Print s
rs.MoveNext
Loop
rs.Close
db.Close
End Sub
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.