我正在嘗試兩次遍歷記錄集。一次寫入所有非零結果,然後再次運行以寫入特定列中具有零的所有行,以使所有值爲0的行位於文件末尾。但是,由於.EOF在第一次運行時觸發,所以當我嘗試再次運行時仍然爲「真」。什麼是最好的方式來貫穿它兩次?如何遍歷記錄集兩次?
With CurrentDb.OpenRecordset(strSQL, dbOpenSnapshot)
Do Until .EOF
If .Fields(2) = 0 Then
Else
strCSV = ""
For x = 0 To .Fields.Count - 1
'No Qualifier
strCSV = strCSV & strDelimiter & Nz(.Fields(x), vbNullString)
Next x
'Eliminate Back to back strQualifiers or Qualifiers if changed
strCSV = Replace(strCSV, strQualifier & strQualifier, "")
strPrint = Mid(strCSV, Len(strDelimiter) + 1)
Print #intOpenFile, strPrint
End If
.MoveNext
Loop
Do Until .EOF
If Nz(.Fields(2), vbNullString) = 0 Then
strCSV = ""
For x = 0 To .Fields.Count - 1
'No Qualifier
strCSV = strCSV & strDelimiter & Nz(.Fields(x), vbNullString)
Next x
'Eliminate Back to back strQualifiers or Qualifiers if changed
strCSV = Replace(strCSV, strQualifier & strQualifier, "")
strPrint = Mid(strCSV, Len(strDelimiter) + 1)
Print #intOpenFile, strPrint
End If
.MoveNext
Loop
End With
這工作謝謝你。不,訂單不會對我有幫助。該表本身是使用asc語句的順序創建的,但我需要將值設置爲底部的零的asc。我不知道有這樣做的方法。僅供參考,它需要按照我剛剛解釋的順序進行分層,以便在其顯示的軟件中正確分層。反正,這對我所做的工作非常有用,謝謝。 (不管有多奇怪,我正在做的是大聲笑)。 – Bryan 2012-01-30 20:47:57