введите строки текстового файла в Excel - PullRequest
0 голосов
/ 26 сентября 2019

Я пытаюсь создать несколько файлов 1 на 1, используя цикл while для промывки всех имен текстовых файлов в столбце A. Кажется, что цикл работает, но он только вводит данные, найденные в первом файле.он вводит данные для каждого из имен файлов, как будто он каждый раз открывает один и тот же файл.Я прошел шаг за шагом по коду и вижу обновление CurrFile во время цикла, но не могу понять, почему он возвращает данные только из первого текстового файла, указанного в столбце A.

IЯ пробовал несколько различных методов, и ниже приведен самый близкий к нему:

Sub ReadFileLineByLine()

Dim my_file As Integer
Dim text_line As String
Dim file_name As String
Dim i As Integer
Dim CurrFile As String
Dim RowCount As Long

Sheets("Log").Activate


RowCount = 1

While Range("A" & RowCount).Value <> ""

CurrFile = Range("A" & RowCount).Value

file_name = "S:\NHHDC\working\Sean F\Adhoc Projects\UG_DUP_D0010s\" & CurrFile
my_file = FreeFile()
Open file_name For Input As my_file


Do Until EOF(1)
    Line Input #1, textline
    text = text & textline
Loop

Close #1

postMPAN = InStr(text, "026|")
postMSN = InStr(text, "028|")
postRead = InStr(text, "030|")

Range("B" & RowCount).Value = Mid(text, postMPAN + 4, 13)
'Range("C" & RowCount).Value = Mid(Text, postMSN + 4, 10)
Range("C" & RowCount).Value = Mid(text, postRead + 6, 16)

RowCount = RowCount + 1
'Close my_file

Wend

End Sub

Я ожидаю, что результаты, возвращаемые для каждого файла, будут разными, но данные, которые вводятся в соседние столбцы,всегда из первого файла.

любая помощь будет оценена!Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...