| Код |
|---|
Private Sub CommandButton1_Click()
Dim NAME, i, R, A() As String, M() As String, FD() As String, T, U, S
Dim OD: Set OD = CreateObject("Scripting.Dictionary")
FD = Split("Номер=,Дата=,Сумма=,НазначениеПлатежа=", ",")
For R = 0 To UBound(FD)
OD(FD(R)) = ""
Next R
NAME = ActiveWorkbook.Path & "\test.txt"
'массив документов
A = Split(CreateObject("Scripting.FileSystemObject").Getfile(NAME).OpenasTextStream(1).ReadAll, "СекцияДокумент")
For i = 1 To UBound(A)
M = Split(A(i), vbNewLine)
S = Replace(M(0), "=", "")
For R = 1 To UBound(M)
If InStr(1, M(R), "=") > 0 Then
T = Split(M(R), "=")(0) & "="
If OD.exists(T) Then
OD(T) = Split(M(R), "=")(1)
End If
End If
Next R
Call WriteDataToCells(CStr(OD("Номер")), CStr(OD("Дата")), CStr(OD("Сумма")), CStr(OD("НазначениеПлатежа")))
Next i
End Sub
Sub WriteDataToCells(Номер As String, Дата As String, Сумма As String, НазначениеПлатежа As String)
Dim ws As Worksheet
Set ws = ThisWorkbook.Sheets("Лист1") ' Замените Лист1 на нужное название листа
'Запись данных в определенные ячейки рабочего листа
ws.Range("A1").Value = Номер
ws.Range("B1").Value = Дата
ws.Range("C1").Value = Сумма
ws.Range("D1").Value = НазначениеПлатежа
End Sub
|
P.S. - Решено
Изменено: - 15.03.2023 18:02:58
(Решено)