#excel
#excel
Вопрос:
У меня есть учетные коды. Некоторые из них состоят из 4 цифр, которые заканчиваются на 0, а другие имеют длину 12 цифр.
Я отформатировал ячейки в столбце электронной таблицы Excel, которые я использую для кодирования счетов, под маской «0000-0000-0000».
Однако иногда у меня может быть только номер счета из 4 цифр, который заканчивается на 0, или он может содержать 12 цифр. В любом случае, это 12 цифр.
Существует ли пользовательский формат, чтобы мне не нужно было вводить все конечные 0 для тех, которые содержат только 4 или 8 цифр, начинающихся цифрами?
Пример. Я хочу ввести 1200, и моя ячейка выдает 1200-0000-0000 без необходимости вводить 120000000000.
Комментарии:
1. это Excel или dynamics?
2. Прошу прощения, это Excel.
3. Когда вы вводите в ячейку, как вы хотите, чтобы Excel узнал, следует ли сразу добавить 0 к этому 4-значному числу или подождать, пока вы введете все 12 цифр?
4. В Excel нет пользовательского формата для этого. Вы можете либо использовать соседний столбец с формулой, либо написать макрос события VBA для достижения желаемого.
5. @RonRosenfeld — Я был удивлен этим. Я думал, что вы могли бы использовать формат либо
0000-0000-0000
, либо####-0000-0000
сделали бы это, но, увы, это ставит1200
в конец . Хороший вызов.
Ответ №1:
Проблема в том, что по умолчанию числа так не работают. Если вы введете 12 в ячейку Excel, Excel подумает, что это двенадцать, а не 120 миллиардов.
Вставьте эту формулу в ячейку B1:
=NUMBERVALUE(LEFT(A1amp;"00000000000", 12))
Установите формат B1 в пользовательский 0000-0000-0000
Введите 12 в ячейку A1. B1 становится тем, что вы просите
Это работает, потому что формула объединяет 11 нулей (в виде строки) в введенное вами значение, затем сокращает его до 12 крайних левых символов и превращает обратно в число.
12 -> «1200000000000″ -> «120000000000» -> 1200-0000-0000