#excel #excel-formula #excel-2007 #vba
#excel #excel-формула #excel-2007 #vba
Вопрос:
У меня есть ячейка, которая должна содержать 7-значный номер. Чтобы гарантировать, что нули не будут обрезаны с самого начала, я создал пользовательский тип ячейки с ‘0000000’. Итак, теперь, если я ввожу 0111111, это не отсекает начальный ноль.
Теперь я не могу понять, как убедиться, что человек действительно вводит 7 цифр. Установка проверки данных с целым числом между 999999 (6 цифр) и 9999999 (7 цифр) не работает, потому что пользователь мог ввести 0123456, который не соответствует этому порогу.
Есть идеи? — Я не могу использовать VBA
Комментарии:
1. Используйте проверку данных на вкладке «Данные» с формулой
=AND(LEN(A1)=7,ISNUMBER(A1))
, где A1 — верхняя левая ячейка желаемого диапазона, чтобы применить проверку.2. Привет @ScottCraner, у меня это работает — но это не работает с 0 в начале
3. Добавьте
'
перед вашими числами. Это сохранит все как есть. (т. Е.:0000100
) Может быть="'"amp;AND(LEN(A1)=7,ISNUMBER(A1))
4. попробуйте
=AND(LEN(A1)=7,ISNUMBER(--A1))
5. И убедитесь, что ячейки отформатированы как текст, а не общий.
Ответ №1:
-
Выберите диапазон, в который вы хотите ввести числа, перейдите в «Формат ячеек», выберите Пользовательский, в поле «Тип» введите 0000000, нажмите OK.
-
Выберите тот же диапазон, перейдите на вкладку «Данные», нажмите «Проверка данных», в выпадающем меню «Разрешить» выберите «Целые числа», в поле «Минимум» введите 0, а в поле «Максимум» введите 9999999 и нажмите OK.
Теперь, если вы введете 123, оно будет отображаться как 0000123.