Проверка, открыт ли файл Excel - VB

Узнай цену своей работы

Формулировка задачи:

Уважаемый форум, поискал, но ответа на вопрос не нашел: как проверить средствами VB открыт ли Excel файл, при условии, что у пользователя могут быть открыты другие книги Excel?
Проблема в том, что прога открывает файлы Excel для работы с данными, при ошибке в программе, нужна проверка, остались ли открытыми файлы Excel. По результатам проверки, открытые файлы нужно закрыть, не закрывая при этом другие файлы Excel, открытые пользователем.
Использую конструкцию:

При этом почему-то при ошибке в программе секция Finally не отрабатывается - остается открытым файл xl_read.
Спасибо!

Решение задачи: «Проверка, открыт ли файл Excel»

textual
Листинг программы
function IsWbOpen(sWbName as string) as boolean
'sWbName = "Книга1.xlsx"
dim wb as workbook
for each wb in xl_read.workbooks
if (wb.name = sWbName ) then
IsWbOpen = true
end if
next
end function

'вызываем в коде:
dim wb as workbook
if IsWbOpen("Книга1.xlsx") then
wb = xl_read.Workbooks("Книга1.xlsx")
else
wb = xl_read.Workbooks.Open(QIMS_export)
end if

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 4.333 из 5