Предположим, у меня есть список значений, таких как 3.67 , 15.89 , 8.58 , 1.14 и 9.69 в 5 разных ячейках. Как выделить 15.89 так как он ближе всего к целому числу?

2 ответа2

0

Предполагая, что ваши данные находятся в ячейках A1:A5, в ячейке B1 введите следующую формулу и заполните до B5:

=IF(MOD(A1,1)<0.5,MOD(A1,1),1-MOD(A1,1))

Теперь в ячейку B6 введите следующую формулу:

=INDIRECT("A"&MATCH(SMALL(B1:B5,1),B1:B5,0)+0)

Это даст вам ответ. Если ваши данные действительно начинаются, скажем, со строки 7, то вам нужно будет соответствующим образом обновить диапазоны, а также изменить конец второй формулы с +0 до +6 .

Мы используем функцию по модулю, чтобы найти только десятичное значение ... если десятичное число меньше 0,5, то мы сохраним это значение; если оно больше 0,5, мы вычтем его из 1: это делает числа сопоставимыми. Затем итоговая формула ищет наименьший результат в столбце B и использует строку ячейки результата, чтобы вернуть значение столбца A.

0

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

Ваши значения находятся в столбце A, а определение ближайшего - в столбце B. Вы можете адаптировать это по мере необходимости.

Решением является формула массива, поэтому введите все, кроме фигурных скобок, с помощью Ctrl Shift Enter вместо Enter.

Формула в B1:

=ABS(A1-ROUND(A1))=MIN(ABS($A$1:$A$5-ROUND($A$1:$A$5)))

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .