私は831 MBのテキストファイルからデータを読みたいと思います。残念ながら、私はを取得しました。実行時エラー14.文字列スペースの外に。コードを変更するにはどうすればよいですか?私はノートブック(W10 64ビット、24 GB RAM、CPU 7500U、Excel 2016)のアレイにデータ全体を読み込むことが可能であるべきだと思います。831 MBのテキストファイルを一度にアレイに読み込む方法は?
The Global Drifter Program(buoydata_15001_jun16.dat)からデータを取得できます。セミコロンではなく、スペースで区切られた最初の7列のデータを処理する必要があります。
Sub DelimitedTextFileToArray()
'PURPOSE: Load an Array variable with data from a delimited text file
'SOURCE: www.TheSpreadsheetGuru.com
Dim Delimiter As String
Dim TextFile As Integer
Dim FilePath As String
Dim FileContent As String
Dim LineArray() As String
Dim DataArray() As String
Dim TempArray() As String
Dim rw As Long, col As Long
'Inputs
Delimiter = ";"
FilePath = "C:\buoydata_15001_jun16.txt"
rw = 0
'Open the text file in a Read State
TextFile = FreeFile
Open FilePath For Input As TextFile
'Store file content inside a variable
FileContent = Input(LOF(TextFile), TextFile)
'Close Text File
Close TextFile
'Separate Out lines of data
LineArray() = Split(FileContent, vbCrLf)
'Read Data into an Array Variable
For x = LBound(LineArray) To UBound(LineArray)
If Len(Trim(LineArray(x))) <> 0 Then
'Split up line of text by delimiter
TempArray = Split(LineArray(x), Delimiter)
'Determine how many columns are needed
col = UBound(TempArray)
'Re-Adjust Array boundaries
ReDim Preserve DataArray(col, rw)
'Load line of data into Array variable
For y = LBound(TempArray) To UBound(TempArray)
DataArray(y, rw) = TempArray(y)
Next y
End If
'Next line
rw = rw + 1
Next x
End Sub
どのバージョンのExcelですか? – Joe
そして、それを読んだり、スプリットをするのに間違いがありますか? – Joe
あなたのコードを読んでから、あなたが一度にすべてを読んでみたい理由を見落としました。 1行ずつ処理しているので、1行ずつ読む必要はありませんか? –