У меня есть таблица, в которой я сообщаю о диапазоне коэффициентов корреляции, которые варьируются от -1,0 до +1,0. Я хочу отформатировать их так, чтобы, если они были плюс или минус один или ноль, то они были отформатированы с одним десятичным знаком, в противном случае они были бы отформатированы с двумя десятичными разрядами.

Например, если диапазон составляет от 0,6789 до 1000, его следует отформатировать как [+.68,+1.0].

В настоящее время, используя комбинацию CONCATENATE и TEXT, я могу получить [+.68,+1.00].

Может ли какой-нибудь превосходный гуру там помочь?

1 ответ1

1

Для нижней границы в A1 и верхней границы в B1 вы можете использовать следующую сверхдлинную формулу:

="["&TEXT(A1,"+."&IF(MOD(A1,1)=0,"0","00")&";-."&IF(MOD(A1,1)=0,"0","00"))&","&TEXT(B1,"+."&IF(MOD(B1,1)=0,"0","00")&";-."&IF(MOD(B1,1)=0,"0","00"))&"]"

Ключевой бит - это функция TEXT . Формат, указанный в функции, включает в себя условие, что, если граница равна -1, 0 или 1, она представляется с одним десятичным знаком. В противном случае граница представляется с двумя десятичными знаками. Тестом для этого условия является MOD(A1,1)=0 , который проверяет, является ли число целым числом или нет (если true, то целое число, в противном случае нет).

Образец вывода:

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