如何将文本文件读取到数组中vba

问题描述:

我有一个包含1000个数据条目(仅整数)的文本文件。文本文件中每行有一个条目。我想知道如何将这些数据转移到VBA中的数组中。如何将文本文件读取到数组中vba

谢谢您花时间回复。

此外,我们可以做到这一点没有循环:

Sub Test() 

Dim FSO As Object, MyFile As Object 
Dim FileName As String, Arr As Variant 

FileName = "C:\Test\Test.txt" ' change this to your text file full name 
Set FSO = CreateObject("Scripting.FileSystemObject") 
Set MyFile = FSO.OpenTextFile(FileName, 1) 
Arr = Split(MyFile.ReadAll, vbNewLine) ' Arr is zero-based array 


'For test 
'Fill column A from this Array Arr 

Range("A1").Resize(UBound(Arr) + 1, 1).Value = Application.Transpose(Arr) 

End Sub 

只需将文本文件的路径保存到名为FilePath的变量中并运行此代码块即可。

Dim arInt(1 to 1000) as Integer 
Dim intCount as Integer 

Set objFSO = CreateObject("Scripting.FileSystemObject") 
With = objFSO.OpenTextFile(FilePath, ForReading) 
intCount = 1 
Do While .EOF = False AND intCount < 1001 
    arInt(intCount) = Val(.readline) 
    intCount = intCount + 1 
Loop 

Val函数将字符串转换为数字值,然后vba将它转换为一个整数给你。 之后,数组中有100个int值。 一旦文件竞争或者数组中有1000个值,代码就会停止。