Excel 将5个工作表中的数据导出到5个文本文件中
我的工作簿包含n个工作表。其中5个包含应导出为文本文件的数据 在一个子过程中,我创建了5个名为export01到export05的文本文件 包含要导出数据的5个工作表的命名方式与export01到export05相同 工作表export01的数据应写入文本文件export01,以此类推 对于表export01的数据导出,我创建了此代码,但我不知道如何导出其他4个表的数据 我应该只复制代码4次,然后更改所需的内容,还是有更好的解决方案?谢谢你的帮助Excel 将5个工作表中的数据导出到5个文本文件中,excel,vba,Excel,Vba,我的工作簿包含n个工作表。其中5个包含应导出为文本文件的数据 在一个子过程中,我创建了5个名为export01到export05的文本文件 包含要导出数据的5个工作表的命名方式与export01到export05相同 工作表export01的数据应写入文本文件export01,以此类推 对于表export01的数据导出,我创建了此代码,但我不知道如何导出其他4个表的数据 我应该只复制代码4次,然后更改所需的内容,还是有更好的解决方案?谢谢你的帮助 sub exportTxt() Dim rng
sub exportTxt()
Dim rng As Range
Dim myTable As String
Dim myFile As String
myTable = "export1"
myFile = "export1.txt"
Sheets(myTable).Select
Set rng = Range("a1").CurrentRegion
Open myFile For Output As #1
For i = 1 To rng.Rows.Count
For j = 1 To rng.columns.Count
cellValue = rng.Cells(i, j).Value
If j = rng.columns.Count Then
Print #1, cellValue
Else
Print #1, cellValue,
End If
Next j
Next i
Close #1
End Sub
将所有代码放入一个巨大的
For循环中
虽然这不是最有效的方式,但它会起作用
For i = 1 to 5
myTable = "export" & i
myFile = "export" & i & ".txt"
' The rest of your code goes here
Next i
你可以考虑一次写一行,甚至使用< /P>
WorkBookVariableName.SaveAs myFile, xlCSV
类似于这样的情况,您的SheetName保存在一个数组中:
Sub DumpSheets()
Dim ws As Worksheet
For Each ws In Sheets(Array("yoursheetnames","test", "test 2", "Sheet4", "Sheet5"))
ws.SaveAs "C:\temp\" & ws.Name & "txt", xlTextMSDOS
Next ws
End Sub
据我所知,您的代码中的文本文件是通过命令“ws.SaveAs…”创建的,或者如果存在,那么这些文本文件将被覆盖?