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

В этом руководстве представлены несколько практических методов сравнения чисел по их точности после запятой в Excel:
- Сравнение дробных частей с помощью функций ЕСЛИ и ОКРВНИЗ
- Сравнение дробных частей с помощью макроса VBA
- Извлечение дробных частей с помощью Извлечь текст
Сравнение дробных частей с помощью функций ЕСЛИ и ОКРВНИЗ
Если вам нужен быстрый и простой способ сравнить два числа по точности до двух знаков после запятой, воспользуйтесь формулой Excel. Следующая формула проверяет, равны ли эти числа после усечения (округления вниз) до двух десятичных знаков:
=IF((FLOOR(A1,0.01)-FLOOR(B1,0.01))=0,1,-1) Эта формула работает, усекая оба значения в ячейках A1 и B1 до двух десятичных знаков, а затем сравнивая полученные результаты.
- Возвращает 1, если два значения совпадают после округления до двух знаков после запятой.
- Возвращает -1, если они различаются.
![]() | ![]() | ![]() |
Примечание: В этой формуле A1 и B1 обозначают два сравниваемых числа. Параметр 0,01 указывает Excel сравнивать значения с точностью до двух десятичных знаков. Вы можете изменить это значение — например, на 0,001 или 0,1 — если требуется большее или меньшее количество десятичных знаков.
Совет:Если вы предпочитаете округлять числа вместо их усечения, используйте вместо этого следующую формулу:
=IF((ROUND(A1,2)-ROUND(B1,2))=0,1,-1) В формуле 2 обозначает количество десятичных знаков для сравнения. Замените его на другое значение в зависимости от ваших данных.
Преимущества: Этот метод прост в использовании для повседневных задач, полностью динамичен и работает без дополнительных надстроек или расширений. Он идеально подходит пользователям, знакомым с формульными решениями, а также тогда, когда нужно быстро выполнять сравнения «на лету».
Ограничения: Имейте в виду, что формулы, использующие арифметику с плавающей запятой, иногда могут выдавать неожиданные результаты из-за ошибок округления — особенно при работе с высокоточными десятичными значениями. Всегда проверяйте несколько выходных значений вручную, чтобы убедиться, что логика корректно работает с вашим набором данных.
Сравнение дробных частей с помощью макроса VBA
Автоматизация сравнения десятичных частей по нескольким строкам чрезвычайно эффективна с помощью макросов VBA, особенно при обработке больших наборов данных или выполнении пакетных операций без ручного вмешательства. Такой подход на VBA извлекает дробные части и сравнивает их построчно, помещая результаты прямо на лист для быстрого просмотра или дальнейшей обработки.
Применимые сценарии: Идеально подходит пользователям, уверенно работающим с макросами Excel, которые регулярно сравнивают десятичные части, а также тем, кому требуется индивидуальная логика или отчётность с минимальным загромождением листа.
1. Откройте Excel и перейдите в меню Разработчик → Visual Basic (если вкладка «Разработчик» не отображается, включите её через параметры Excel). В окне VBA выберите Вставка → Модуль, затем вставьте следующий код в новый модуль:
Sub CompareFlooredDecimals()
Dim ws As Worksheet
Dim lastRow As Long
Dim i As Long
Dim valA As Double, valB As Double
Dim floorA As Double, floorB As Double
Dim resultCol As Long
Set ws = ActiveSheet
lastRow = ws.Cells(ws.Rows.Count, 1).End(xlUp).Row
resultCol = 3 ' Output column (C)
For i = 1 To lastRow
valA = ws.Cells(i, 1).Value
valB = ws.Cells(i, 2).Value
floorA = Int(valA * 100) / 100
floorB = Int(valB * 100) / 100
If floorA = floorB Then
ws.Cells(i, resultCol).Value = 1
Else
ws.Cells(i, resultCol).Value = -1
End If
Next i
End Sub 2. Нажмите кнопку
Выполнить, чтобы запустить макрос. Результаты («1» или «-1») появятся в столбце C напротив каждой соответствующей пары чисел из столбцов A и B.
Пояснение параметров: Этот макрос сравнивает дробные части чисел в столбцах 1 (A) и 2 (B) и выводит результаты в столбец 3 (C). Убедитесь, что числа для сравнения уже введены в столбцы A и B перед запуском макроса. Если вы хотите отображать результаты в другом столбце, просто измените значение resultCol = 3. Перед запуском макросов VBA, особенно при работе с большими или важными данными, настоятельно рекомендуем создать резервную копию.
Советы: Для надёжной работы всегда проверяйте первые несколько строк результатов и обращайте внимание на пустые ячейки, нечисловые данные или нестандартное форматирование — всё это может повлиять на выполнение макроса. Если возникают ошибки, убедитесь, что диапазон данных указан правильно, а столбцы отформатированы как числа.
Преимущества: Полная автоматизация, высокая гибкость настройки и полное устранение рутинной ручной работы. Идеально подходит продвинутым пользователям и при обработке сотен или даже тысяч строк. Если количество десятичных знаков разное или требуется определённая точность округления, вы легко адаптируете код для сравнения с заданным числом десятичных знаков с помощью функции ОКРУГЛ.
Извлечение дробных частей с помощью Извлечь текст
Если вам нужно извлечь определённые цифры после десятичной точки, а не сравнивать два числа напрямую, воспользуйтесь функцией Извлечь текств Kutools для Excel— это простой и эффективный способ. С её помощью вы мгновенно выделите нужное количество цифр после запятой, что особенно удобно при работе с нестандартными числовыми форматами или когда дробную часть требуется отобразить или проанализировать отдельно.
1. Выделите два столбца с числами, дробные части которых нужно извлечь, затем перейдите в меню Kutools > Текст > Извлечь текст.

2. В диалоговом окне Извлечь текст введите .?? в поле Текст, чтобы извлечь две цифры после десятичной точки, затем нажмите Добавить, чтобы создать правило извлечения. Вы можете изменить шаблон (например,).??? для трёх цифр) в зависимости от требуемой длины десятичной части.
![]() | ![]() | ![]() |
3. Убедитесь, что в разделе Извлечь список выбрано только что добавленное правило, и нажмите ОК.
4. Выберите начальную ячейку для размещения извлечённых результатов и нажмите ОК, чтобы завершить извлечение.


Совет:Если вы хотите сравнить извлечённые дробные части после использования Извлечь текст, введите следующую формулу в пустую ячейку и скопируйте её вниз по мере необходимости:
=IF((D1-E1)=0,1,-1) Это отобразит 1 для совпадающих дробных частей и -1, когда они различаются.
![]() | ![]() | ![]() |
Преимущества: Гибкость при выделении конкретных десятичных цифр — идеальное решение для точечного извлечения данных или работы с нестандартными числовыми форматами.
Ограничения: Требуется установка Kutools для Excel. Извлечение выполняется как отдельный процесс, а первоначальная настройка может занять немного больше времени у новых пользователей.
Демонстрация: Как сравнить два числа только по дробной части с помощью Kutools для Excel
Устранение неполадок и рекомендации:Используя любое из приведённых выше решений, всегда проверяйте согласованность числовых форматов (данные должны быть числами, а не текстом) и избегайте смешивания разделителей тысяч или других символов в сравниваемых столбцах. Особенно при работе с формулами или VBA неожиданные результаты часто вызваны скрытым форматированием или пустыми ячейками — удалите лишние пробелы и убедитесь, что ваш диапазон данных соответствует логике формул или макроса. Обязательно создавайте резервную копию данных перед запуском VBA, а если возникают ошибки формул (например,)#ЗНАЧ!), проверьте, являются ли значения в ячейках числовыми, и при необходимости скорректируйте ссылки.
Связанные статьи
- Как удалить ведущие нули перед десятичной точкой в Excel?
- Как преобразовать десятичные часы или минуты в формат времени в Excel?
- Как преобразовать десятичное число в двоичное, восьмеричное или шестнадцатеричное — и наоборот — в Excel?
- Как сгенерировать случайные целые или десятичные числа в Excel?
Лучшие инструменты повышения продуктивности в 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-дневная полнофункциональная пробная версия— без регистрации и кредитной карты
- Лучшее соотношение цены и качества— экономия по сравнению с покупкой отдельных надстроек






