Как устранить ошибки деления на ноль (#DIV/0!) в Excel?

При анализе данных в Excel вы часто сталкиваетесь с ошибкой #DIV/0!, особенно в расчётах, связанных с делением. Эта ошибка возникает, когда формула пытается разделить число на ноль или на пустую ячейку — операции, которые Excel считает недопустимыми. Например, на листе анализа продаж, если вы рассчитываете среднюю цену каждого фрукта по формуле =D2/(C2-B2) (см. иллюстрацию), формула вернёт ошибку #DIV/0!, если значение в Q2 (конечное количество) совпадает со значением в Q1 (начальное количество). Такие ошибки засоряют отчёты, затрудняют интерпретацию данных и могут нарушать последующие вычисления. К счастью, существует несколько эффективных способов избежать, скрыть или управлять этими сообщениями об ошибках — в зависимости от ваших задач, возможности редактировать исходные формулы или предпочтения быстрых решений.
- Предотвращайте ошибки деления на ноль (#DIV/0!), изменяя формулы
- Удаляйте ошибки деления на ноль (#DIV/0!), выделяя все ошибки и удаляя их
- Удаляйте ошибки деления на ноль (#DIV/0!), заменяя ошибки пустыми ячейками
- VBA: автоматически находите и заменяйте ошибки #DIV/0! на пустые ячейки или собственные сообщения
Предотвращайте ошибки деления на ноль (#DIV/0!) с помощью изменения формул
Использование формул, автоматически обрабатывающих деление на ноль, — это проактивный и систематический подход. Например, формула =D2/(C2-B2) вернёт ошибку #DIV/0!, если значения в ячейках C2 и B2 совпадают. Чтобы избежать таких ошибок в отчётах, формулу можно усовершенствовать с помощью функции IFERROR, которая проверяет наличие любой ошибки в расчёте и позволяет заменить её на пустую ячейку или собственное сообщение. Такая доработка сохраняет чистоту листа и предотвращает путаницу, вызванную сообщениями об ошибках.
Введите в ячейку E2 формулу =IFERROR(D2/(C2-B2),«») и перетащите маркер заполнения вниз по диапазону E2:E15, чтобы применить её ко всем нужным ячейкам.
Благодаря этой настройке формула отображает пустую ячейку вместо сообщения об ошибке — например, при делении на ноль или возникновении любой другой ошибки. Это обеспечивает более аккуратное представление данных:

Совет: Вместо «» в формуле можно указать пользовательское сообщение, например «Недоступно» или «Недопустимо», чтобы легче находить проблемные записи. Просто обновите формулу соответствующим образом:
=IFERROR(D2/(C2-B2),"Not Available")
Примечание: Хотя функция IFERROR проста и эффективна, она перехватывает все типы ошибок, а не только #DIV/0!. Если вы используете сложные формулы, где разные ошибки требуют разной обработки, рассмотрите возможность применения функции IF вместе с ISERROR или IF вместе с ISERR, чтобы более избирательно обрабатывать ошибки. Например:
=IF((C2-B2)=0,"",D2/(C2-B2))Эта формула специально избегает деления на ноль, оставляя другие ошибки видимыми для удобства устранения неполадок.
Однако адаптация формул может оказаться затруднительной в крупных книгах или когда структуру формулы сложно изменить. В таких случаях другие методы устранения ошибок могут оказаться удобнее.
Удаляйте ошибки деления на ноль (#DIV/0!), выделяя все ошибки и удаляя их
Если ошибки #DIV/0! уже появились в вашем диапазоне, а изменить формулы невозможно, быстро найдите и удалите все ошибочные значения с помощью утилиты Kutools для Excel Выбрать ячейки с ошибочным значением. Этот инструмент позволяет пакетно выделять ячейки со всеми типами ошибок (включая #DIV/0!, #N/A и другие), чтобы массово удалить или обработать их — особенно полезно в больших и сложных листах.
Выделите весь диапазон, в котором нужно найти ошибки. Нажмите Kutools > Выделить > Выбрать ячейки с ошибочным значением — и все ячейки с ошибками в выделенном диапазоне будут мгновенно найдены!
Все ячейки с ошибками в диапазоне «Выберите диапазон» мгновенно выделяются, как показано на снимке экрана. Чтобы удалить эти ошибки, просто нажмите клавишу Delete. Это очистит ячейки с ошибками и сохранит чистоту листа.

Примечание: Этот метод выделяет все ошибки в выбранном диапазоне, а не только ошибки #DIV/0!. Если вы хотите нацелиться только на определённый тип ошибок, используйте ручную фильтрацию или альтернативные методы.
Этот метод удобен, когда нужна быстрая очистка данных, а изменение формул невозможно. Однако простое удаление ячеек может привести к потере информации и окажется неприемлемым, если последующие расчёты зависят от этих значений.
Удаляйте ошибки деления на ноль (#DIV/0!), заменяя ошибки пустыми ячейками
Для пользователей, которые хотят автоматически заменять сообщения об ошибках — включая #DIV/0! — на пустые ячейки, сохраняя при этом структуру листа и исходные формулы, Kutools для Excel предлагает утилиту Мастер форматирования условий ошибок. Эта функция позволяет выбрать, какие типы ошибок следует обрабатывать, и задать их отображение — эффективно скрывая неприглядные ошибки и обеспечивая более чёткий и легко читаемый лист.
Выделите нужный диапазон, в котором могут присутствовать ошибки. Перейдите в меню Kutools > Дополнительно > Мастер форматирования условий ошибок.

В диалоговом окне Мастер форматирования условий ошибок откройте поле Тип ошибки и выберите Все сообщения об ошибке, кроме #N/A из выпадающего списка. В разделе Отображение ошибки установите флажок Нет (пустая ячейка) и подтвердите нажатием кнопки OK.
Эта процедура автоматически обновит ячейки с формулами в указанном диапазоне, заменив стандартные сообщения об ошибках на пустые ячейки — за исключением ошибок #N/A, которые можно оставить видимыми, например, чтобы подчеркнуть намеренные ошибки поиска. Результат показан ниже:

Советы: При необходимости вы можете изменить параметр отображения, чтобы показывать пользовательский текст уведомления об ошибке — например, «Недопустимо» или «Проверьте данные», — что упростит диагностику. Имейте в виду: замена ошибок на пустые ячейки может скрыть проблемы с данными, поэтому периодически проверяйте формулы, которые могут вызывать ошибки.
Примечание: По умолчанию этот метод игнорирует ошибки #N/A, если вы явно не включите их в выделение.
Kutools для Excel— раскройте весь потенциал Excel с помощью более чем 300 незаменимых инструментов, которые ускоряют и упрощают вашу работу, а также воспользуйтесь возможностями ИИ для более разумной обработки данных и повышения продуктивности.Получить сейчас
VBA: автоматически находите и заменяйте ошибки #DIV/0! на пустые ячейки или собственные сообщения
Иногда требуется автоматизировать удаление ошибок по всему листу или работать с диапазонами, где изменение формул непрактично. С помощью VBA (Visual Basic for Applications) можно создать макрос, который просканирует выбранный диапазон и заменит все ошибки #DIV/0! либо пустыми ячейками, либо пользовательским сообщением. Это особенно полезно для однократной очистки или при работе с большими наборами данных.
1. Перейдите в меню Инструменты разработчика > Visual Basic, чтобы открыть окно редактора VBA. В редакторе нажмите Вставка > Модуль и вставьте следующий код в модуль:
Sub ReplaceDiv0WithBlank()
Dim WorkRng As Range
Dim Rng As Range
Dim xTitleId As String
Dim ReplaceText As String
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Select range to scan for #DIV/0! errors:", xTitleId, WorkRng.Address, Type:=8)
ReplaceText = Application.InputBox("Enter message to replace #DIV/0! (leave blank for empty cell):", xTitleId, "", Type:=2)
For Each Rng In WorkRng
If IsError(Rng.Value) Then
If Rng.Text = "#DIV/0!" Then
Rng.Value = ReplaceText
End If
End If
Next
End Sub 2.После ввода кода закройте редактор VBA. Выделите диапазон, в котором нужно заменить ошибки #DIV/0! в Excel, затем нажмите клавишу F5 или нажмите кнопку «Run». Следуйте инструкциям, чтобы выбрать нужный диапазон и ввести собственный текст для замены (или оставьте поле пустым).
Примечания и советы: этот код обрабатывает только ошибки #DIV/0! — все остальные ошибки остаются без изменений. При работе с большим диапазоном время выполнения может увеличиться. Если в диапазоне есть защищённые ячейки, убедитесь, что они разблокированы, иначе макрос не сможет заменить значения в них.
Демонстрация: удаление ошибок деления на ноль (#DIV/0!)
См. также:
Лучшие инструменты повышения продуктивности в Office
Раскройте весь потенциал Excel с помощью Kutools для Excel и ощутите эффективность как никогда раньше.Kutools для Excel предлагает более 300 расширенных функций для повышения продуктивности и Экономия времени.Нажмите здесь, чтобы получить нужную Вам функцию…
Office Tab добавляет в Office вкладки и значительно упрощает Вашу работу
- Включите редактирование и чтение во вкладках в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Открывайте и создавайте несколько документов во вкладках одного окна — вместо того чтобы использовать отдельные окна.
- Повышает вашу продуктивность на 50 % и экономит сотни кликов мышью каждый день!
Все надстройки Kutools — один установщик
Kutools for Office — набор надстроек для Excel, Word, Outlook и PowerPoint, а также Office Tab Pro, идеально подходящий командам, работающим с разными приложениями Office.
- Единый комплект— надстройки для Excel, Word, Outlook и PowerPoint + Office Tab Pro
- Один установщик, одна лицензия— настройка занимает считанные минуты (готово для MSI)
- Лучше работать вместе— оптимизированная продуктивность во всех приложениях Office
- 30-дневная полнофункциональная пробная версия— без регистрации и кредитной карты
- Лучшее соотношение цены и качества— экономия по сравнению с покупкой отдельных надстроек