Перейти к содержимому

Как найти ближайшее или самое близкое значение в Excel?

Author: Xiaoyang Last Modified: 2025-08-07

При анализе данных или составлении отчетов часто требуется найти в столбце или наборе значений элемент, который является ближайшим к заданному целевому значению. Хотя в Excel нет встроенной функции «найти ближайшее значение», это можно сделать с помощью формул, VBA, условного форматирования или сторонних инструментов. В этой статье мы рассмотрим несколько распространенных подходов, разберем основные принципы каждого метода, шаги по их реализации, а также плюсы и минусы, чтобы помочь вам выбрать наилучшее решение.


Найти ближайшее или самое близкое число с помощью формулы массива

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

Чтобы начать, выберите пустую ячейку и введите следующую формулу. После того как вы ввели формулу, обязательно нажмите Ctrl + Shift + Enter вместо простого Enter. Это обеспечит выполнение формулы как формулы массива, что необходимо для ее корректной работы:

=INDEX(B3:B22,MATCH(MIN(ABS(B3:B22-E2)),ABS(B3:B22-E2),0))
Примечание: В этой формуле массива {=INDEX(B3:B22,MATCH(MIN(ABS(B3:B22-E2)),ABS(B3:B22-E2),0))}:
  • B3:B22 относится к диапазону, содержащему данные, которые вы хотите проанализировать.
  • E2 — это ячейка, куда вы ввели свое целевое значение (например, 18).

Этот подход наиболее подходит, когда вам нужно получить одно ближайшее число из непрерывного диапазона. Он хорошо работает в большинстве случаев, где важны числовая точность и точные совпадения. Однако имейте в виду, что формулы массива могут быть ресурсоемкими при работе с очень большими наборами данных. Если вы испытываете проблемы с производительностью или получаете сообщения об ошибках, такие как #VALUE!, дважды проверьте свои ссылки на ячейки и убедитесь, что вы правильно нажали Ctrl + Shift + Enter.


Легко выберите все ближайшие числа в диапазоне отклонения от заданного значения с помощью Kutools для Excel

Бывают случаи, когда вам может понадобиться не только одно ближайшее значение, но и выбор всех чисел, попадающих в определенный диапазон вашего целевого значения, часто называемый диапазоном отклонения. Kutools для Excel предлагает практичное решение через функцию Выбор специальных ячеек, позволяя быстро выбрать все значения в пределах указанной разницы от вашей цели.

Kutools для Excel предлагает более 300 продвинутых функций для упрощения сложных задач, повышая креативность и эффективность. Интеграция с возможностями ИИ позволяет Kutools автоматизировать задачи с высокой точностью, делая управление данными без усилий. Подробная информация о Kutools для Excel...  Бесплатная пробная версия...

Например, предположим, что ваше целевое значение равно 18, и вы установили значение отклонения равным 2. Это означает, что вы хотите выбрать все значения в вашем диапазоне, находящиеся между 16 (18–2) и 20 (18+2). Вот как это можно сделать пошагово:

1. Выберите диапазон, который вы хотите просмотреть (например, B3:B22), затем перейдите в Kutools > Выбрать > Выбрать определенные ячейки.

2. В диалоговом окне Выбрать определенные ячейки:

  • В разделе Тип выбора выберите Ячейка.
  • В Укажите тип:
    - Установите первое выпадающее меню на Больше или равно и введите 16 в поле.
    - Установите второе выпадающее меню на Меньше или равно и введите 20.

set options in the Select Specific Cells dialog box

3. Нажмите ОК для выполнения. Kutools уведомит вас о количестве ячеек, соответствующих вашим критериям, и выделит все ближайшие значения в пределах указанного отклонения, как показано ниже:
all closest values of the given value are selected

Это решение идеально подходит для быстрого выявления всех ближайших значений оптом, особенно при работе с широкими диапазонами с переменными допусками. Обратите внимание, что точность вашего выбора зависит от четкого указания вашего отклонения — если ваше отклонение слишком узкое или широкое, вы можете пропустить релевантные данные или включить нежелательные значения.


Макрос VBA для нахождения ближайшего значения к цели

Для пользователей, ищущих автоматизацию или которым необходимо выполнять настраиваемый поиск ближайшего значения — будь то числовые или текстовые данные — на нескольких листах или больших наборах данных, макрос VBA может быть эффективным и гибким решением. Программируя Excel на систематическую проверку разницы между вашей целью и всеми кандидатами, вы можете получить не только ближайшее число, но и ближайшую строку по текстовой дистанции.

Этот подход выгоден, когда требуется интеграция автоматизации, особенно для диапазонов, слишком больших для ручных методов, или для повторяющихся задач. Однако имейте в виду, что макросы VBA требуют включения макросов и базового знакомства с VBA-средой. Перед запуском любого макроса всегда создавайте резервную копию своих данных, чтобы предотвратить непреднамеренную потерю.

1. Нажмите Разработчик > Visual Basic. В окне Microsoft Visual Basic for Applications нажмите Insert > Module и скопируйте следующий код в модуль:

Function FindClosest(rng As Range, target As Double) As Double
    Dim cell As Range
    Dim minDiff As Double
    Dim closestValue As Double
    
    minDiff = 1E+99
    For Each cell In rng
        If Abs(cell.Value - target) < minDiff Then
            minDiff = Abs(cell.Value - target)
            closestValue = cell.Value
        End If
    Next cell  
    FindClosest = closestValue
End Function 

2. Затем перейдите на свой рабочий лист и введите эту формулу: =FindClosest(B3:B22, E2) в пустую ячейку. Нажмите клавишу Enter, чтобы получить ближайшее значение.

Примечание: В этой формуле B3:B22 определяет диапазон данных, а E2 содержит целевое значение, используемое для нахождения ближайшего совпадения.

Используйте условное форматирование для визуального выделения ближайших значений

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

Основное преимущество этого метода заключается в не разрушительном, динамическом выделении, которое может адаптироваться при изменении данных или целевых значений. Он особенно хорошо подходит для дашбордов, презентаций и сценариев просмотра, где важна видимость. Этот метод может быть менее точным, если более чем одно значение имеет одинаковую «близость», и он не выводит само значение для дальнейшей обработки.

1. Выберите диапазон ячеек, который вы хотите проанализировать (например, B3:B22).

2. На вкладке Главная нажмите Условное форматирование > Новое правило.

3. Выберите Использовать формулу для определения форматируемых ячеек в диалоговом окне. Затем в поле формулы введите следующую формулу:

=ABS(B3-$E$2)=MIN(ABS($B$3:$B$22-$E$2))

4. Нажмите Формат и выберите цвет выделения, затем нажмите ОК и снова ОК, чтобы применить правило.

Это выделит все ячейки в выбранном диапазоне, значения которых являются ближайшими к целевому значению в E2.

Если вы работаете с большими диапазонами или сталкиваетесь с неожиданными результатами, дважды проверьте правильность ваших ссылок и убедитесь, что абсолютные/относительные ссылки установлены должным образом (используйте $ для фиксации целевой ячейки и ссылок на диапазон).


Демонстрация: выберите все ближайшие значения в диапазоне отклонения от заданного значения

 

Лучшие инструменты для повышения продуктивности в Office

🤖 Kutools AI Aide: Переворот в анализе данных на основе: Интеллектуальное выполнение   |  Сгенерировать код  |  Создать Пользовательские Формулы  |  Анализ данных и генерация диаграмм  |  Вызов Kutools Functions
Популярные функции: Найти, выделить или отметить дубликаты   |  Удалить пустые строки   |  Объединить столбцы или ячейки без потери данных   |   Округлить...
Супер ПОИСК: VLookup с несколькими критериями    VLookup с несколькими значениями  |   Многолистовой поиск   |   Распознавание нечетких соответствий ....
Расширенный раскрывающийся список: Быстро создать раскр. список   |  Зависимый раскрывающийся список   |  Множественный выбор в раскрывающемся списке ....
Менеджер столбцов: Добавить определенное количество столбцов  |  Переместить столбцы  |  Переключить статус видимости скрытых столбцов  |  Сравнить диапазоны и столбцы ...
Рекомендуемые функции: Сетка фокусировки   |  Дизайн листа   |   Улучшенная строка формулы    Управление книгой и листами   |  Библиотека автотекста (Auto Text)   |  Выбор даты   |  Объединить данные   |  Шифрование/Расшифровка ячеек    Отправить письмо по списку   |  Супер фильтр   |   Специальный фильтр (фильтр по жирному/курсиву/зачеркиванию...) ...
Топ–15 наборов инструментов: 12 текстовых инструментов (Добавить текст, Удалить определенные символы, ...)   |   50+ типов диаграмм (Диаграмма Ганта, ...)   |   40+ практических формул (Расчет возраста на основе даты рождения, ...)   |   19 инструментов вставки (Вставить QR-код, Вставить изображение из пути, ...)   |  12 инструментов преобразования (Преобразовать в слова, Конвертация валюты, ...)   |  7 инструментов объединения и разделения (Расширенное объединение строк, Разделить ячейки, ...)   |   ... и многое другое
Используйте Kutools на вашем предпочитаемом языке – поддерживаются английский, испанский, немецкий, французский, китайский и более40 других языков!

Повысьте свои навыки работы в Excel с Kutools для Excel и ощутите новую эффективность. Kutools для Excel предлагает более300 расширенных функций для повышения продуктивности и экономии времени.  Щелкните здесь, чтобы получить наиболее нужную вам функцию...


Office Tab добавляет вкладочный интерфейс в Office, делая вашу работу значительно проще

  • Включите редактирование и чтение во вкладках в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
  • Открывайте и создавайте несколько документов во вкладках одного окна, а не в новых окнах.
  • Увеличьте свою продуктивность на50% и сократите сотни кликов мышью ежедневно!