excel批量导入txt到不同sheet
时间: 2023-05-16 16:04:40 浏览: 503
您可以使用 VBA 宏来实现这个功能。首先,您需要打开 Excel 文件并创建一个新的工作表。然后,您可以使用以下代码将文本文件导入到新的工作表中:
Sub ImportTextFile()
Dim fileName As String
Dim sheetName As String
Dim delimiter As String
Dim textData() As String
Dim rowNum As Long
Dim colNum As Long
Dim i As Long
Dim j As Long
'获取文件名和工作表名
fileName = InputBox("请输入要导入的文本文件名(包括路径):")
sheetName = InputBox("请输入要导入的工作表名:")
'获取分隔符
delimiter = InputBox("请输入文本文件中的分隔符:")
'打开文本文件并读取数据
Open fileName For Input As #1
rowNum = 1
While Not EOF(1)
Line Input #1, textData()
colNum = 1
For i = 0 To UBound(textData)
Cells(rowNum, colNum).Value = textData(i)
colNum = colNum + 1
Next i
rowNum = rowNum + 1
Wend
Close #1
'将数据分配到新的工作表中
Worksheets.Add(After:=Worksheets(Worksheets.Count)).Name = sheetName
For i = 1 To rowNum - 1
For j = 1 To colNum - 1
Worksheets(sheetName).Cells(i, j).Value = Cells(i, j).Value
Next j
Next i
'清除数据
Range("A1").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.ClearContents
End Sub
您可以将此代码复制并粘贴到 Excel 的 VBA 编辑器中,然后运行它。它将提示您输入要导入的文本文件名、要导入的工作表名和文本文件中的分隔符。然后,它将创建一个新的工作表并将文本文件中的数据导入到该工作表中。
阅读全文