
Если у меня есть 3, то это становится 3,000. 4,5678 становится 4,568. Возможно ли сделать это в Excel, не предоставляя вам таблицу или не предоставляя воспроизводимый пример? Я хочу отформатировать всю таблицу Excel так, чтобы после запятой было только 3 цифры, или придумать способ зафиксировать количество значащих цифр в каждой ячейке таблицы.
решение1
Если вы хотите ОТФОРМАТИРОВАНИЕ данных, но не хотите их фактически изменять, то решение состоит из двух частей.
Часть первая — применить следующий формат ко всем ячейкам с данными. Использование подхода Гари Стьюдента вполне подходит для физического выполнения. Вот формат для применения:
#,##0.###
С этим вы получаете разделители-запятые для тысяч и т. д. Опустите лидирующие символы #
и запятую, если это нежелательно. Далее, это гарантирует, что вы получите лидирующие символы 0
для значений от 1 до -1 (так что у вас будет " 0.123 ", а не " .123 "). Если это нежелательно, используйте другие #
вместо 0
( #,###.###, а не #,##0.### ).
Магия заключается в том, что #
используемый после десятичной точки вызывает появление 1 десятичного знака для каждого используемого, BUT ONLY
если это не дает строку 0's
. Таким образом, значение типа PI даст 3,142, а значение типа 5,202384 даст 5,202 (оно понимает, что 0
in там необходимо, потому что после него есть еще ненулевые десятичные знаки), но значение типа 28,2 даст именно это, а не 28,200, потому что оно видит, что последние два 0's
— просто пустая трата времени.
Имейте в виду, это НЕ НЕ НЕ соблюдение каких-либо правил вообще significant figures
. Это всего лишь решение о том, что отображать.
Однако... это имеет неприятный эффект. Число вроде 324 будет отображать десятичную точку после себя, как это: "324." что никому не нравится. Так что же делать? В конце концов, это единственная реальная проблема на данный момент.
Это вторая часть решения. Примените условное форматирование к тем же выделенным ячейкам. Настройте его на работу из формулы и используйте эту формулу:
=(TRUNC(A1,0)=A1)
(Предполагается, что активная ячейка («выделенная ячейка») — это A1. Если нет, используйте фактическую ячейку.)
Обратите внимание, что в этом адресе НЕТ $
символов: A1, а не, скажем, $A$1. Это важно. Если у вас активная ячейка A1 и вы используете формулу выше, она фактически проверит каждую ячейку сама по себе, что вам и нужно.
Формула отсекает значение в ячейке по десятичной точке и сравнивает этот результат с фактическим значением в ячейке. Так что если это целое число, они равны, и она знает, что нужно применить формат, чтобы эта противная десятичная точка не появлялась. Если фактическое значение не является целым числом, тест выдает ЛОЖЬ, и она позволяет использовать обычный формат из первой части, показывая до трех десятичных знаков.
После ввода формулы вам нужно задать формат. Но это именно то, что вам нужно прямо сейчас, поэтому нажмите кнопку формата, затем нажмите OK, и все готово. Иногда люди говорят мне, что это не работает в их версии Excel, и если это так для вас, примените пользовательский числовой формат:
Общие;Общие;Общие;Общие
и это СРАБОТАЕТ. Так что сначала попробуйте самый простой, а потом делайте это только при необходимости. Или просто сделайте это. Какого черта, а?
Сохраните работу по условному форматированию, и все готово.
(Это кажется сложным, но это только потому, что я объяснил, что делают эти шаги. На самом деле нужно выполнить всего две короткие операции форматирования: одну обычную и одну в условном форматировании so it is quite quick and easy to do.
)