【发布时间】:2019-07-16 07:52:23
【问题描述】:
我是 VBA 的新手。我将解析具有以下格式的文本文件:
040 11 VAR1 TRUE
040 12 VAR2 FALSE
040 13 VAR3 FALSE
040 14 VAR4 FALSE
我使用了代码:
Sub Bouton4_Cliquer()
Dim myFile As String, text As String, textline As String
myFile = "C:\Users\Andrea\Desktop\textlist.txt"
Open myFile For Input As #1
Dim Result() As String
Dim i As Integer
i = 1
Do Until EOF(1)
i = i + 1
Line Input #1, textline
Result() = Split(textline)
Worksheets("BOOLEAN").Cells(i, 1).value = Result(2)
Worksheets("BOOLEAN").Cells(i, 2).value = Result(1)
Worksheets("BOOLEAN").Cells(i, 3).value = Result(0)
Worksheets("BOOLEAN").Cells(i, 4).value = Result(3)
Loop
Close #1
End Sub
这会返回一个错误,因为 Result() 只有一个元素。
事实上,我注意到 Split 将整行放在一个元素中,而不是按空间拆分。
【问题讨论】:
-
试试
Result() = Split(textline, " ") -
试过了,同样的错误
-
请在解析之前告诉我们
textline持有什么。 -
我试过了,效果很好。
-
您的文本不是通过水平制表符分隔吗?我猜你可以试试
Split(textline, Chr(9))