Основы офисного программирования и язык VBA


Ввод-вывод для файлов произвольного доступа и бинарных файлов - часть 5


N = Int(Rnd * 9 + 1) 'Число обрабатываемых записей Debug.Print "Число обрабатываемых записей -- ", N For i = 1 To N Code = Int(Rnd * 9 + 1) 'Установить позицию Seek 1, Code 'Получить запись с заданным кодом Get #1,, MyRec If MyRec.КодТовара = 0 Then Debug.Print "В файле нет записи с кодом:", Code Else: Call PrintRec(MyRec) End If Next i Close #1 End Sub

Из новых деталей отметим следующее. Здесь оператор Seek работает по существу, хотя, конечно, и без него можно было бы обойтись, используя возможности оператора Get. Однако, более важно, обратить внимание на то, что при попытке читать запись с ключом, который не задавался при создании файла (по существу, читать несуществующую запись) не возникает ошибки. Причину этого мы уже объяснили. Поэтому приходится организовывать собственную проверку, как это и сделано в нашей программе. В заключение приведем результаты одного из экспериментов с этой процедурой:

Число обрабатываемых записей -- 2 Код Товара: 8 Цена: 224 В файле нет записи с кодом: 5




Начало  Назад  Вперед



Книжный магазин