Поиск…


Вступление

Иногда вам может понадобиться создать текстовый файл с разделителями для различных целей. Следующий пример - один из многих способов помочь вам в этом. Я использовал канал («|») для моего разделителя, чтобы изменить это, просто изменив назначение Sep-переменной. В моем примере я отбрасываю набор записей в массив, это ни в коем случае не дефакто-подход, а просто мой подход. Это можно легко сделать с использованием самого набора записей.

замечания

Это стоит отметить:

 Wholeline = Wholeline & aRR(i, j) & Sep

Так как наборы реестров переносятся в массивы, вам нужно будет прочитать их в текстовом файле назад. Это действительно удобно, если вы работаете с динамическими массивами, поскольку он уже перенесен для вас, поэтому повторение «подсчета строк» ​​может быть выполнено до любого тяжелого подъема.

И ничего не стоит:

Вы можете легко перенести массив youre, сбросив его в новую строку за строкой, используя этот синтаксис:

    Dim xaRR() As String
    ReDim xaRR(q, z)
    xaRR(j, i) = aRR(i, j)

это не слишком актуально для моего поста, но его ценность указывает.

Пример:

Private Sub this()
    Dim rs As DAO.Recordset
    Dim q%: Dim z%
    Set rs = CurrentDb.OpenRecordset("SELECT * FROM Invoice;")

    With rs
        rs.MoveLast
        q = rs.RecordCount
        rs.MoveFirst
        z = rs.Fields.Count
    End With
    
    Dim aRR As Variant
    
    aRR = rs.GetRows(q)
    
    Dim i%: Dim j%: Dim counter#: Dim Sep$: Dim Wholeline$: Dim NewTextFile$: Dim path$: Dim fileNameV$
    
    Sep = "|"
    path = Environ("USERPROFILE") & "\Desktop" & "\"
    fileNameV = "Text007.txt"
    NewTextFile = path & fileNameV
    Open NewTextFile For Output As #2
    For j = LBound(aRR, 2) To UBound(aRR, 2)
        For i = LBound(aRR, 1) To UBound(aRR, 1)
            Wholeline = Wholeline & aRR(i, j) & Sep
        Next i
        Print #2, Wholeline
        Wholeline = vbNullString
    Next j
    Close #2

    rs.Close
    Set rs = Nothing
    Erase aRR
    
End Sub


Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow