У меня есть диапазон в моей таблице с пользовательским форматированием типа:

##":"##

на диапазоне я также установил проверку данных:

Критерии валидации

Allow: Text length (Ignore blank is unchecked)
Data: equal to
Length: 4

потому что я хочу убедиться, что пользователи используют 4 десятичных знака при наборе, например, 1300 или 0925.

Проблема:

Если пользовательский ввод начинается с "0", например 0900, критерии проверки не выполняются. Это почему? Я что-то упустил?

Благодарю.

2 ответа2

1

VBA для преобразования числа в значение времени не работает для вас? Почему вы хотите отформатировать ячейку вообще? Мы обсудили недостатки подхода к форматированию в вашем другом вопросе.

Excel игнорирует начальные нули при вводе числа. Поэтому проверка ваших данных на 4 цифры никогда не пройдет. Единственный способ сохранить начальный ноль - ввести его как текст. Но когда вы вводите текст, вы не можете использовать формат для форматирования текста, который будет отображаться как 00:00 .

Возвращается на круги своя. Вам нужен VBA для этого. Я предоставил отлично работающую функцию в вашем другом вопросе.

Простое форматирование не обрезает его. Вам нужен VBA.

-1

Вместо пользовательского форматирования отформатируйте ячейки в «текст»

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