1

Если я введу сумму в долларах зарплаты как 34512.15, я бы хотел, чтобы формула возвращала эту сумму в определенном формате следующим образом:

М (НТ)(ТТ)(TH)HTOCC

M = миллионы (HT)= сто тысяч (TT)= десять тысяч (TH)= тысячи H = сотни T = десятки O = единицы CC = центы

Входные данные могут включать или не включать десятичные числа, но возвращаемое значение не должно.

Кроме того, если для какого-либо значения места не указано значение, в возвращаемом значении должен быть указан ноль. Таким образом, в приведенном выше примере выходные данные должны быть "003451215" без кавычек. Другой пример: зарплата 56000 будет возвращаться как "005600000". Это возможно?

2 ответа2

2

Объедините функции SUBSTITUTE и TEXT . Возможно, вам придется изменить "." на основе ваших региональных настроек. Чтобы преобразовать значение, показанное в A1 формула:

=SUBSTITUTE(TEXT(A1,"0000000.00"),".","")

Обратите внимание, что он будет преобразовывать только числовые значения. Любой текст или ошибки просто возвращаются без изменений.

Если вы введете очень большие значения, результат будет длиннее. То есть, это не рубит цифру в миллиардах. Если вы хотите что-то, что делает это, используйте это вместо:

 =RIGHT(SUBSTITUTE(TEXT(A1,"0000000.00"),".",""),9)
2

Если вы умножите на 100, чтобы избавиться от десятичной точки, то вы можете просто использовать функцию TEXT, чтобы получить начальные нули, например, с вашей зарплатой в A1

=TEXT(A1*100,"000000000")

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