VBA линейный вход vs вход
Я хочу прочитать файл, написанный c, где каждая строка разделена на /n. Я хочу прочитать этот файл и сравнить его с данными в excel.
Я использовал input #1, data
.
Но я хочу прочитать строку с", " (запятая), поэтому я использовал Line Input #1, data
.
когда я проверяю, что "данные" с данными в excel, хотя они одинаковы, это говорит ложь.
Activecell="KVK"
Line Input #1,data
msgbox ActiveCell=data
печатает false, даже если данные KVK.
Спасибо за помощь заранее, Vamshi krishna
Dim fpath, fnum, s
fpath = Application.GetOpenFilename
fnum = FreeFile
Open fpath For Input As fnum
Range("A1").Activate
Do While Not EOF(fnum)
Line Input #fnum, s
'Input #fnum, s
MsgBox s & " = " & ActiveCell & " "
MsgBox s = ActiveCell
ActiveCell.Offset(1, 0).Select
Loop
.формат txt имеет
12
13
14
данные в первой колонке
12
13
14
2 ответов
попробовать ниже код :
Sub InputImage()
Dim FileNum As Integer, i As Integer
Dim fpath As String, s As String, cellVal As String
fpath = Application.GetOpenFilename
FileNum = FreeFile()
Open fpath For Input As #FileNum
i = 1
While Not EOF(FileNum)
Line Input #FileNum, s ' read in data 1 line at a time
cellVal = CStr(Cells(i, 1).Value)
MsgBox s & " = " & cellVal & " "
MsgBox s = cellVal
ActiveCell.Offset(1, 0).Select
i = i + 1
Wend
End Sub
Если вы проверяете в окне просмотра тип данных ячейки (i,1).Значение показывает Variant / Double. Поэтому необходимо преобразовать в string.
или используйте TextStream в библиотеке сценариев, это намного лучше.
и, пожалуйста, закройте файл, Когда вы закончите с ним, вы должны быть человеком, который не кладет молоко обратно в холодильник, когда вы закончите с ним, и просто портит его для всех.