我有一個表格myForm帶有文本框myText。將文本追加到文本框中不添加記錄集中的所有字段
在的onLoad功能,我寫了應該是所有行從一個記錄,數據庫的鎖文件追加,到會將myText文本框代碼。
實際情況是,只有四個字段的第一個字段被添加到文本框中。
Dim cn As New ADODB.Connection
Dim cn2 As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim i, j As Long
cn.Provider = "Microsoft.Jet.OLEDB.4.0"
cn.Open "Data Source=Z:\myDatabase.mdb"
cn2.Open "Provider=Microsoft.Jet.OLEDB.4.0;" _
& "Data Source=Z:\myDatabase.mdb"
Set rs = cn.OpenSchema(adSchemaProviderSpecific, , "{947bb102-5d43-11d1-bdbf-00c04fb92675}")
Me.myText.SetFocus
Me.myText.text = ""
Do While Not rs.EOF
Me.myText.text = Me.myText.text & rs.Fields(0) & vbTab & rs.Fields(1) & vbTab & _
rs.Fields(2) & vbTab & rs.Fields(3) & vbCrLf
rs.MoveNext
Loop
我試圖
Debug.Print rs.Fields(0) & vbTab & rs.Fields(1) & vbTab & rs.Fields(2) & vbTab & rs.Fields(3)
和所有四個領域在即時窗口中顯示。
編輯: 我拿出vbtab,因爲它不支持,文件本身已經擁有的空間,我在
Me.myText.text = Me.myText.text & rs.Fields(0) & rs.Fields(1) & _
rs.Fields(2) & rs.Fields(3) & vbCrLf
改變Me.myText.text
到Me.myText
。 現在我的代碼似乎在一開始就工作。當我一步一步地調試文本框就像它應該填充的一樣,但是當Code退出do while循環時,只有第一行的第一個字段顯示在文本框中。
debug.print Me.myText
退出循環之前顯示所有行。退出循環後仍顯示所有行。但在表格中,文本框只顯示第一個記錄,第一個字段。
窗體和文本框都沒有任何其他事件,這是在窗體加載的事件。
出了什麼問題?
在窗體的設計視圖中,滾動條和多行上允許的文本框中? –
@GaryEvans,是的。 – MJH