Вопрос

Мне нужно перенести документ из MS Excel в Open Office с помощью макросов.Все работает отлично, кроме этой функции

 If Application.WorksheetFunction.IsNumber(Cells(12, 5)) = False Then
   MsgBox "Nesprávne zadané číslo účtu alebo kód banky!", vbCritical
   ActiveSheet.Protect Password:="****", DrawingObjects:=True, Contents:=True, Scenarios:=True
   Exit Sub
 End If

Это проверка значений, вставленных пользователем.Но я получаю только эту ошибку:

Основная переменная ошибки времени выполнения объекта не установлена

Поэтому я дважды проверил свой документ, не пуста ли ячейка E12, а заполнена ли она.Есть ли в Open Office другой способ проверить формат ввода?Спасибо

Это было полезно?

Решение

Номер в Excel Visual Basic отличается как в OO.Попробуйте использовать GetCellbyName («E12»). Значение Эта функция возвращает ваш номер

Другие советы

Если линия If Application.WorksheetFunction.IsNumber(Cells(12, 5)) = False Then не может сказать object not set, и вы это подтвердили Cells(12, 5) возвращает значение, то единственные возможности, которые я могу придумать, заключаются в том, что либо Application или Application.WorksheetFunction является Nothing.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top