Пример определяемой пользователем функции для скрытия ошибок формул в Excel

Сводка

Некоторые формулы в Microsoft Excel возвращают значения ошибок при определенных условиях. Например, при использовании формулы деления, которая умножает число на ноль, появляется следующее значение ошибки:

#ДЕЛ/0!

Используя пример формулы "=100/0", вы можете обойти это поведение, скрывая значение ошибки. Для этого измените формулу следующим образом:

=IF(ISERROR(100/0),"",100/0)

Примечание.

Предыдущая формула работает, но с более длинными формулами она может стать громоздкой.

При использовании определяемой пользователем функции, приведенной в этой статье, формула обходного решения выглядит следующим образом:

=IFERROR(100/0,"")

Дополнительная информация

Корпорация Майкрософт предоставляет примеры программирования только в целях демонстрации без явной или подразумеваемой гарантии. Данное положение включает, но не ограничивается этим, подразумеваемые гарантии товарной пригодности или соответствия отдельной задаче. Эта статья предполагает, что пользователь знаком с представленным языком программирования и средствами, используемыми для создания и отладки процедур. Специалисты технической поддержки Майкрософт могут пояснить работу той или иной процедуры, но модификация примеров и их адаптация к задачам разработчика не предусмотрена.

Создание примера функции

  1. В Excel откройте Редактор Microsoft Visual Basic.

    Для этого в Microsoft Office Excel 2003 и более ранних версиях Excel наведите указатель мыши на пункт Макрос в меню Сервис, а затем выберите Visual Basic Редактор. Кроме того, нажмите клавиши ALT+F11.

    Для этого в Microsoft Office Excel 2007 откройте вкладку Разработчик , а затем выберите Visual Basic в группе Код . Кроме того, нажмите клавиши ALT+F11.

    Примечание.

    Чтобы отобразить вкладку Разработчик на ленте, нажмите кнопку Microsoft Office, выберите пункт Параметры Excel, выберите категорию Популярные, выберите вкладку Показать вкладку Разработчик в поле Лента проверка и нажмите кнопку ОК.

  2. Щелкните Модуль в меню Вставка и введите следующий макрос.

    Function IfError(formula As Variant, show As String)
    
         On Error GoTo ErrorHandler
    
         If IsError(formula) Then
            IfError = show
        Else
            IfError = formula
        End If
    
        Exit Function
    
    ErrorHandler:
        Resume Next
    
    End Function
    
  3. В меню Файл выберите команду Закрыть и вернуться в Microsoft Excel.

  4. Чтобы использовать функцию, щелкните Вставить функцию в меню Вставка. В диалоговом окне Вставка функции щелкните Определяемый пользователем в разделе Категории, а затем щелкните IfError в разделе Выберите функцию. Нажмите кнопку ОК.

  5. Рядом с полем Формула введите формулу, для которой нужно скрыть значение ошибки. Не включайте знак равенства (=).

  6. Рядом с полем Показать введите то, что вы хотите отобразить вместо значения ошибки. Если вы хотите скрыть значение ошибки, введите двойные кавычки ("").

  7. Нажмите кнопку ОК.

Дополнительные сведения об использовании примера кода в этой статье см. в статье Запуск примера кода из статей базы знаний в Office 2000.