Хауди,
У меня VBA работает за MS Access. Мне нужно многократно искать и извлекать данные из файла 40 МБ. Слишком большой для загрузки в строковую переменную. Я загрузил его в двоичный массив (скорее zippily, я мог бы добавить), но я не знаю, как использовать этот формат ..... Я не могу понять цикл через массив байт за раз в поисках строки ......
Так что я отбросил эту идею ... (но я хочу научиться использовать эту стратегию) ... Я приступил к поиску на основе FilesystemObject; вот что у меня так далеко:
Я получаю начало (x) и конец (y) узла и затем помещаю его в переменную FLat.
Set ts = FSO.OpenTextFile(DLookup("gsgtver", "Eramdat", "EramID = 1"), ForReading, False, TristateFalse)
x = InStr(1, ts.ReadAll, ">" & sFirst & "<")
ts.Close
Set ts = FSO.OpenTextFile(DLookup("gsgtver", "Eramdat", "EramID = 1"), ForReading, False, TristateFalse)
y = InStr(x, ts.ReadAll, "</FixRecord")
ts.Close
Set ts = FSO.OpenTextFile(DLookup("gsgtver", "Eramdat", "EramID = 1"), ForReading, False, TristateFalse)
FLat = Mid(ts.ReadAll, x, y - x)
ts.Close
Если бы мне не пришлось делать это от 10 до 120 раз, я бы записал это в «приемлемом состоянии ожидания», но, как вы можете догадаться, это неприемлемо. Любые предложения о том, как сделать это более гладко?