行のキーセル値に対する値に関するデータを取得したい。問題は、ファイルが非常に大きいことです。約 54000 行と 14 列の .txt ファイルがあるため、テキスト ファイル自体は 20 MB であり、それに対して D 列の値を取得する必要があります。 F列の値。列 F の値は一意です。
これまで、.txt ファイルからデータを取得してシートにコピーし、ループを実行して添付値を取得するという直接的なアプローチを試みてきました。
しかし、コードは 15 分間待っても .txt ファイルからデータを取得できません。
Do While bContinue = True
outRow = 1
sInputFile = Application.GetOpenFilename("Text Files (*.txt), *.txt")
If sInputFile = "False" Then
bContinue = False
Reset 'close any opened text file
Exit Sub
Else
outCol = outCol + 2
'process text file
fNum = FreeFile
Open sInputFile For Input As #fNum
Do While Not EOF(fNum)
outRow = outRow + 1
Line Input #fNum, sInputRecord
Sheets("Sheet1").Cells(outRow, outCol).Value = sInputRecord
Loop
Close #fNum
End If
Loop
errHandler:
Reset
End Sub
しばらく時間がかかると思っていましたが、このコードを実行するのに永遠に時間がかかり、マクロを使用する目的が失われます。誰かがこの問題を解決するためのより良い方法を持っているかどうかを尋ねます.