我读了一个文本文件,它有 100 多列,用制表符分隔。此代码将每一行读取一行到一个字符串中。如何将所有行导入到不同的列中(我必须为大约 100 个文件执行此过程)。
Sub reader()
Dim filePath As String
Dim text As String
Dim x As Integer
filePath = "C:\Users\Squirrel\Desktop\CodePack\account_inf.txt"
Dim fso As FileSystemObject: Set fso = New FileSystemObject
Set txtStream = fso.OpenTextFile(filePath, ForReading, False)
Do While Not txtStream.AtEndOfStream
text = txtStream.ReadLine
x = x + 1
Cells(x, 1).Value = Left(text, 1)
Loop
txtStream.Close
End Sub
最佳答案
使用您的代码,您必须构建一个程序,按制表符拆分字符串并将值写入其他列:
Cells(1, 1) = "ah" & vbTab & "kakva si!" & vbTab & _
"antilopa" & vbTab & "Gazella"
写ah kakva si! antilopa Gazella
位于 Range("A1") 中,然后将其拆分到其他列,如下所示:
Sub TestMe()
Cells(1, 1) = "ah" & vbTab & "kakva si!" & vbTab & _
"antilopa" & vbTab & "Gazella"
Dim wholeString As Variant
wholeString = Split(Cells(1, 1), vbTab)
Dim i As Long
For i = LBound(wholeString) To UBound(wholeString)
Cells(1, i + 1) = wholeString(i)
Next i
End Sub
关于vba - 在vba上使用制表符分割文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50926101/