Сборник материалов Конференции молодых специалистов НГОНБ - 2022
72 Далее удаляется заголовок, убираются пустые абзацы и нумерация. Производится преобразование в таблицу встроенными инструмен- тами: «Вставка» – «Таблицы» – «Преобразовать в таблицу». Потом перемещается столбец с ББК на два столбца правее, два крайних пра- вых столбца с указанием зала и номером акта удаляется. Полученный результат копируется и вставляется в бланк акта в Excel. В Excel де- лается сортировка по инвентарному номеру. Для выполнения описанной последовательности операций был написан макрос в бланке акта в Excel. На листе бланка нарисована кнопка, запускающая макрос (она при распечатке на бумаге не ото- бражается). От пользователя требуется: скопировать в буфер обмена содержимое, выгруженное из электронного каталога в файл Microsoft Word, открыть бланк акта, нажать кнопку «Вставить», и дождаться окончания выполнения макроса. Код макроса по преобразованию текста, выгруженного из каталога, в заполненный акт выглядит следующим образом: For I = 1 To intK If InStr(2, Cells(I, 2), "|") <> 0 Then J = 2 intSk = 1 Do While intSk <= 5 masSk(intSk) = InStr(J, Cells(I, 2), "|") J = masSk(intSk) + 1 intSk = intSk + 1 Loop lstBlank.Cells(intStr, 1) = (intStr - 5) & Chr(46) lstBlank.Cells(intStr, 2) = Mid(Cells(I, 2), 3, masSk(1) - 4) lstBlank.Cells(intStr, 3) = Mid(Cells(I, 2), masSk(1) + 1, masSk(2) - masSk(1) - 2) lstBlank.Cells(intStr, 4) = Mid(Cells(I, 2), masSk(3) + 1, masSk(4) - masSk(3) - 2) lstBlank.Cells(intStr, 5) = Mid(Cells(I, 2), masSk(4) + 1, masSk(5) - masSk(4) - 2) lstBlank.Cells(intStr, 6) = Mid(Cells(I, 2), masSk(2) + 1, masSk(3) - masSk(2) - 2) intStr = intStr + 1 If intStr - 5 > 25 Then Exit For End If Next I
Made with FlippingBook
RkJQdWJsaXNoZXIy MTY3OTQ2