Мне нужно создать текстовый файл для электронной таблицы Excel.Однако количество столбцов и строк заранее неизвестно, и формат должен быть достаточно конкретным.Например, с учетом следующего формата Excel:
ID1 | ID2 |ID3
97 | 12 | 47
08 | 09 | 54
17 | 46 | 07
Выходной текстовый файл (текстовый файл) будет выглядеть следующим образом:
97,ID2:12;ID3:47
08,ID2:09;ID3:54
17,ID2:46;ID3:07
Существует ли простой способ сделать это, используяVBA?
В настоящее время я пробовал ниже макроса:
Sub WriteToTextFile()
Dim iLastRow As Long
Dim iLastCol As Long
iLastRow = Range("A" & Rows.Count).End(xlUp).Row
iLastCol = Cells(1, Columns.Count).End(xlToLeft).Column
Open "C:\Users\Admin\Desktop\123.txt" For Output As #1
For i = 1 To iLastRow
For j = 1 To iLastCol
If j <> iLastCol Then
Print #1, "ID1: "; Cells(i, j),
Else
Print #1, "ID2: "; Cells(i, j)
End If
Next j
Next i
Close #1
Shell "notepad.exe ""C:\Users\Admin\Desktop\123.txt", vbNormalFocus
End Sub
Используя вышеупомянутый макрос, я получу вывод, как указано ниже:
ID1: Col1 ID1: Col2 ID1: Col3 ID4: Col4
ID1: 1234567890 ID1: AJAY ID1: 70 ID4: 72
ID1: 1234567890 ID1: AJAY ID1: 71 ID4: 73
ID1: 1234567890 ID1: AJAY ID1: 72 ID4: 74
Но янужен вывод, как указано ниже:
Col1,Col2,Col3,Col4
1234567890,ID2: AJAY,ID3: 70,ID4: 72
1234567890,ID2: AJAY,ID3: 71,ID4: 73
Пожалуйста, помогите мне!