Отправляет email-рассылки с помощью сервиса Sendsay

Excel - вопросы и ответы

  Все выпуски  

Excel - вопросы и ответы



Добрый день!

 

Я нашел следующую, думается ве6сьма интересную, публикацию:

Коллекция алгоритмов. Массовое исправление ошибок #ДЕЛ/0!, #Н/Д! и др.

Версия для
печати
Написал Алексей Шмуйлович  (сайт http://msexcel.ru/content/view/127/1/) 
14.03.2007
Итак, мы имеем некий большой отчет, в некоторых ячейках которого наблюдаем ошибки #ДЕЛ/0!, #Н/Д!, #ЗНАЧ! и иже с ними.

Как быстро справиться с ситуацией, не стирая формулы в "несчастливых" ячейках, чтобы не нарушать целостность формы?

Я использую для этих целей следующий макрос:

 Sub ОшибкаВНоль()

    Dim cl As Range

    On Error Resume Next

    For Each cl In Selection.Cells

        If cl.Errors.Item(xlEvaluateToError).Value = True Then

            clfrm = Right(cl.Formula, Len(cl.Formula) - 1)

            cl.FormulaLocal = "=если(еошибка(" & clfrm & ");0;" & clfrm & ")"

        End If

    Next

End Sub

Макрос перебирает все ячейки в выделенном диапазоне. Если ячейка содержит ошибку вычисления, ее формула модифицируется с использованием функций рабочего листа ЕСЛИ() и ЕОШИБКА() (об этом приеме много раз писали на форуме). Теперь вместо ошибки в ячейке будет отображаться 0.

Если данные на листе изменятся и ошибка исчезнет, модифицированная формула вернет правильное значение. Таким образом мы добились своей цели.

Если алгоритм Вам понравился, скопируйте его в личную книгу макросов и назначите пользовательской кнопке панели инструментов.

Поскольку у нас появилось много новых подписчиков, думаю будет небесполезным разместить здесь ссылку на самоучитель по Excel, с которого, собственно, все и началось - http://www.amankuliev.ru/excel/excel.html

Кроме того, предлагается самоучитель "Access - 10 уроков для вас"

С уважением,
Александр РАСЕВ


В избранное