Excel ввод даты по шаблону
Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel для Интернета Excel 2021 Excel 2021 for Mac Excel 2019 Excel 2019 для Mac Excel 2016 Excel 2016 для Mac Excel 2013 Excel 2010 Excel 2007 Excel для Mac 2011 Еще. Меньше
Когда вы введите дату или время в ячейку, она отображается в формате даты и времени по умолчанию. Этот формат по умолчанию основан на региональных параметрах даты и времени, заданных на панели управления, и изменяется при их настройке на панели управления. Числа можно отобразить в нескольких других форматах даты и времени, на большинство из которых параметры панели управления не влияют.
В этой статье
Отображение чисел в качестве даты или времени
Вы можете форматирование даты и времени по мере их ввести. Например, если ввести в ячейку 2/2, Excel будет автоматически интерпретирован как дата и отобразит в ячейке 02.фев. Если это не то, что вам нужно (например, если вы хотите, чтобы в ячейке были 2 февраля 2009 г. или 02.02.09), в диалоговом окне Формат ячеек можно выбрать другой формат даты, как покажем в следующей процедуре. Аналогично, если ввести в ячейку 9:30 a или 9:30 p, Excel интерпретирует это как время и отображает 9:30 или 21:30. Вы также можете настроить способ времени в диалоговом окне Формат ячеек.
На вкладке Главная в группе Число нажмите кнопку вызова диалогового окна, расположенную рядом с надписью Число.
Вы также можете нажать CTRL+1, чтобы открыть диалоговое окно Формат ячеек.
В списке Категория выберите дата иливремя.
В списке Тип выберите нужный формат даты или времени.
Примечание: Форматы даты и времени, которые начинаются со звездочки (*), отвечают на изменения в региональных параметрах даты и времени, заданных на панели управления. На форматы без звездочки параметры, заданные на панели управления, не влияют.
Чтобы отобразить даты и время в формате других языков, выберите нужный язык в поле Языковой стандарт (расположение).
Число в активной ячейке выбранного на этом сайте отображается в поле Образец, чтобы можно было просмотреть выбранные параметры форматирования.
Создание пользовательского формата даты или времени
На вкладке Главная нажмите кнопку вызова диалогового окна рядом с именем группы Число.
Вы также можете нажать CTRL+1, чтобы открыть диалоговое окно Формат ячеек.
В поле Категория выберите дата или время ,а затем выберите числовом формате, наиболее близком по стилю к тому, который вы хотите создать. (При создании пользовательских числных форматов проще начать с существующего, чем с нуля.)
В списке Категория выберите пункт (все форматы). В поле Тип вы увидите код формата, совпадающий с форматом даты или времени, выбранным на шаге 3. Встроенный формат даты или времени нельзя изменить или удалить, поэтому не беспокойтесь о переописи.
В поле Тип введите необходимые изменения формата. Вы можете использовать любой из кодов в следующих таблицах:
Дни, месяцы и годы
Для отображения
Используйте код
Месяцев в виде чисел от 1 до 12
Месяцев в виде чисел от 01 до 12
Месяцев в виде "янв", . "дек"
Месяцев в виде "январь", . "декабрь"
Месяцев в виде первой буквы месяца
Дней в виде чисел от 1 до 31
Дней в виде чисел от 01 до 31
Дней в виде "Пн", . "Вс"
Дней в виде "понедельник", . "воскресенье"
Лет в виде чисел от 00 до 99
Лет в виде чисел от 1900 до 9999
Если вы используете "м" сразу после кода "ч" или "чч" или непосредственно перед кодом "сс", Excel отображает минуты вместо месяца.
Часы, минуты и секунды
Для отображения
Используйте код
Часы в качестве 0–23
Часы в качестве 00–23
Минуты в качестве 0–59
Минуты в качестве 00–59
Секунды в качестве 0–59
Секунды в качестве 00–59
Часы с 04:00 до 04:0
Время в 4:36:03 P
Заслон времени в часах; например, 25,02
Заслон времени в минутах; например, 63:46
За считанные секунды
AM и PM Если формат содержит am или PM, часы основаны на 12-часовом формате, где "AM" или "A" указывает время от полуночи до полудня, а "PM" или "P" — время от полудня до полуночи. В противном случае используется 24-часовой цикл. Код "м" или "мм" должен отображаться сразу после кода "ч" или "чч" или непосредственно перед кодом "сс"; в противном Excel отображается месяц, а не минуты.
Создавать пользовательские числовые форматы может быть непросто, если вы этого еще не сделали. Дополнительные сведения о создании пользовательских числных форматов см. в теме Создание и удаление пользовательских числов.
Советы для отображения дат и времени
При попытке отменить формат даты или времени с помощью выбора в списке Категория общего Excel отображает числовом коде. При повторном вводе даты или времени Excel формат даты или времени по умолчанию. Чтобы ввести определенный формат даты или времени, например январь 2010г., можно отформать его как текст, выбрав текст в списке Категория.
Чтобы быстро ввести текущую дату, выйдите из любой пустой ячейки и нажмите CTRL+; (точка с за semicolon) и при необходимости нажмите ввод. Чтобы вставить дату, которая будет обновляться до текущей даты при каждом повторном повторном пересчете или пересчете формулы, введите =СЕГОДНЯ() в пустую ячейку и нажмите ввод.
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.
Если Вам часто приходится вводить даты и время в ячейки, то Вам должна понравиться идея писать их сокращенно, без точек-дробей-двоеточий - просто как число. Чтобы в заданном диапазоне ячеек листа, например, число 250699 автоматически превращалось в 25.06.1999, а 1125 в 11:25.
Для этого щелкните по ярлычку листа, куда будут вводиться даты и время и выберите команду Исходный текст (Source Code). В открывшееся окно редактора Visual Basic скопируйте и вставьте следующий код:
Диапазоны A2:A10 и B2:B10 замените на свои области листа, куда будут подобным образом вводиться даты и время, соответственно.
Ссылки по теме
Макрос вообще не нужен если формат ячейки поставить "Дата", а значения вводить: 25-06-1999 или 25/06/1999 или 25,06,1999. Если набрать 25/6 или 25-06 . то год подставится текущий.
Не ставьте заранее для ячейки ввода формат даты. Иначе все введенное Excel автоматически преобразует в дату, а точнее - в свой специфический код даты. И макрос работает дальше уже с ним, а не с введенными вами цифрами.
у меня не работает даже в скачанном примере. Если не менять формат ячейки, и ввести, к примеру, 110887, то ничего не меняется, цифры в таком формате и остаются. Если формат ячейки поменять на формат даты, то выдает 06.08.2203
Защита от макросов выключена? Файл - Параметры - Центр Управления Безопасностью - Параметры Центра Управления - Макросы - Разрешить все макросы. И перезагрузиться.
Подскажите, пожалуйста, почему не работает на всю книгу? Если создаю для одного листа - все в порядке. Статью по созданию макросов прочитала, но все равно не получается.
Потому, что этот макрос написан для листа и вставлять его надо в модули листов, а не в модуль ЭтаКнига.
здравствуйте. макрос отличный на много сокращает количество нажатий кнопок на клавиатуре и соответственно времени рутины. при его использовании столкнулся с тем что при внесении даты(например 310113) если ошибочно внес не 6 знаков(например 3113), а другое количество выдает ошибку необходимости отладки кода макроса по 12 строке и макрос перестает работать.подскажите, что можно сделать ?
В случае занесения не 6 символов ошибку выдавать не должно - в 10-й строке идет проверка на наличие именно 6 символов, и если количество введенных цифр не равно 6 - макрос заканчивает работу и ничего не происходит.
Добрый день!
На работе этот макрос используем на нескольких компьтерах ошибка «runtimeerror ‘13’ typemismatch» появляется при ошибочном внесении например «1»или «131312».
После этого макрос перестает работать. Макрос включается только после перезапускаExcel.
Я не могу разобраться почему так происходит.
Подскажите,что нужно сделать что бы:
1. -макрос снова начинал работать без перезапуска Excel
2. - не появлялась на экране ошибка «runtimeerror ‘13’ typemismatch» которая приводит в панику некоторых пользователей.
3. - и посмотрите пожалуйста макрос предложенный Вами чуть чуть мной переделанный. Какие в нем недостатки. В VBA профан за ранее извеняюсь за назойливость .
(файл в котором у меня ошибка прикрепить не могу не нахожу кнопки "прикрепить файл"
А ее тут и нет - это комментарии к приему, а не форум. Лучше создайте тему на форуме и прикрепите ваш файл с макросом - а мы его покритикуем
А зависание макроса происходит, скорее всего, из за того, что вы в коде отключаете обработку событий Application.EnableEvents=False, а после возникновения ошибки она у вас обратно не включается.
Сразу Спасибо за сайт. оч помогает.
а как переделать макрос для времени, если вводится формат 21 . 15 (ну или любой другой знак, всякое бывает), ну а нужен обычный 21:15
dDate = DateValue(Left(StrVal, 2) & "/" & Mid(StrVal, 3, 2) & "/" & Right(StrVal, 2))
12 строка подсвечивается для отладки, когда макрос перестаёт работать.
Это происходит, как я заметил, в случае:
1. Сортировки таблицы, несколько столбцов которой заполнены при помощи данного макроса датой и временем.
2. После ошибочного ввода в рабочем диапазоне макроса даты с разделителями, удаления ошибчной записи и последующей попытки заполнить ячейку не применяя разделители, при помощи макроса.
Добрый день! не в коем случаи не хочу обидеть автора статьи, но у меня есть один трюк именно для того, чтобы лишний раз не нажимать shift и какой либо знак. он делается очень легко и для даты и для времени, без всякого там кода VB, сам я ламер в VB поэтому вечно ищу более легкие пути, так вот я делаю так:
для даты:
в формате ячейки -> все форматы 00\.00\.0000
пример:
12122012 -> 12.12.2012
для времени -> все форматы 00\:00
пример:
1212 -> 12:12
после слеша влево можно поставить любой знак, который предпочтителен для Вас.
Надеюсь Вам понравится такая идея.
если у кого будут вопросы или захотите сказать спасибо, я в facebook Parviz Ruziev
Добрый день, описанный вами прием всего лишь придаст форму но не изменит сути, Excel не будет воспринимать введенное значение как дату.
К сожалению, с отофрматированными вашим способом датами нельзя работать. Попробуйте вычесть из одной даты другую, чтобы посчитать количество дней - и получите ерунду. И ни одна функция из категории "Даты и время" с вашими "датами" работать не будет. Так что не советовал бы идти таким путем, при всем уважении.
Посмею предложить свой вариант. )))
В формате ячейки (у меня это D2) выставляем формат типа:
00"."00"."0000
На проверку вводимых данных задаем условия проверки:
тип данных – другой; и на соответствие формуле в соответствующей ячейке (у меня это R2).
Формула такого вида:
=ЕСЛИ(ИЛИ(И(ДЛСТР(D2)=7;ДАТАЗНАЧ(ТЕКСТ(ДАТА(ПРАВСИМВ(D2;4);ПСТР(D2;2;2);СЦЕПИТЬ("0";ЛЕВСИМВ(D2)));"ДД.ММ.ГГГГ";))>=25569;ДАТАЗНАЧ(ТЕКСТ(ДАТА(ПРАВСИМВ(D2;4);ПСТР(D2;2;2);СЦЕПИТЬ("0";ЛЕВСИМВ(D2)));"ДД.ММ.ГГГГ";))<=44196;ЗНАЧЕН(ТЕКСТ(ПСТР(D2;2;2);"00";))<=12);И(ДЛСТР(D2)=8;ДАТАЗНАЧ(ТЕКСТ(ДАТА(ПРАВСИМВ(D2;4);ПСТР(D2;3;2);ЛЕВСИМВ(D2;2));"ДД.ММ.ГГГГ";))>=25569;ДАТАЗНАЧ(ТЕКСТ(ДАТА(ПРАВСИМВ(D2;4);ПСТР(D2;3;2);ЛЕВСИМВ(D2;2));"ДД.ММ.ГГГГ";))<=44196;ЗНАЧЕН(ТЕКСТ(ПСТР(D2;3;2);"00";))<=12;ИЛИ(ЕСЛИ(И(ИЛИ(ЗНАЧЕН(ТЕКСТ(ПСТР(D2;3;2);"00";))=1;ЗНАЧЕН(ТЕКСТ(ПСТР(D2;3;2);"00";))=3;ЗНАЧЕН(ТЕКСТ(ПСТР(D2;3;2);"00";))=5;ЗНАЧЕН(ТЕКСТ(ПСТР(D2;3;2);"00";))=7;ЗНАЧЕН(ТЕКСТ(ПСТР(D2;3;2);"00";))=8;ЗНАЧЕН(ТЕКСТ(ПСТР(D2;3;2);"00";))=10;ЗНАЧЕН(ТЕКСТ(ПСТР(D2;3;2);"00";))=12;);ЗНАЧЕН(ТЕКСТ(ЛЕВСИМВ(D2;2);"00";))<=31);ИСТИНА;ЛОЖЬ);ЕСЛИ(И(ИЛИ(ЗНАЧЕН(ТЕКСТ(ПСТР(D2;3;2);"00";))=4;ЗНАЧЕН(ТЕКСТ(ПСТР(D2;3;2);"00";))=6;ЗНАЧЕН(ТЕКСТ(ПСТР(D2;3;2);"00";))=9;ЗНАЧЕН(ТЕКСТ(ПСТР(D2;3;2);"00";))=11);ЗНАЧЕН(ТЕКСТ(ЛЕВСИМВ(D2;2);"00";))<=30);ИСТИНА;ЛОЖЬ);ЕСЛИ(И(ЗНАЧЕН(ТЕКСТ(ПСТР(D2;3;2);"00";))=2;ЗНАЧЕН(ТЕКСТ(ЛЕВСИМВ(D2;2);"00";))<=29);ИСТИНА;ЛОЖЬ)));ИСТИНА;ЛОЖЬ)
Не пойму почему так отображает, в выше приведенной формуле смайлики заменить на ")" без кавычек естественно.
Соответственно дата вводится без каких-либо посторонних знаков, только цифры. Формула проверяет что бы введенный диапазон был между 01.01.1970 и 31.12.2020, при вводе большей или меньшей даты – выдает ошибку, при попытке ввести 13 и т.д. месяц – выдает ошибку, при попытке ввести более 31 дня (в январе, марте, мае, июле, августе, октябре, декабре) – выдает ошибку, при попытке ввести более 30 дней (в апреле, июне, сентябре, ноябре) – выдает ошибку, при попытке ввести более 29 дней в феврале – выдает ошибку. Осталось добить проверку високосных лет. )))))
Ну и перевести это все безобразие в дату тоже не проблема, у меня в ячейке I2 идет подсчет даты от введенной в ячейку D2 плюс 2 месяца вот такой формулой:
=ЕСЛИ(ЕПУСТО(D2);""; ЕСЛИ(ДЛСТР(D2)=7; ДАТАМЕС(ДАТА(ПРАВСИМВ(D2;4);ПСТР(D2;2;2);(СЦЕПИТЬ("0";ЛЕВСИМВ(D2))));2); ДАТАМЕС(ДАТА(ПРАВСИМВ(D2;4);ПСТР(D2;3;2);ЛЕВСИМВ(D2;2));2)))
Сразу отвечу на вопрос зачем так все усложнять – просто задача стояла сделать без макросов.
а можно чтоб при вводе числа например 5 появлялась дата не текущего а конкретного месяца или хотябы прошлого месяца текущего года, я например делаю отчёт за прошлый месяц и чтоб не вводить значения года и месяца а только день
Принес с работы файл созданный в офисе 2007 который работает хорошо (именно с этим макросом), но дома на офисе 2013 не хочет пишет Could not load an object because it is not available on this machine.(Не удалось загрузить объект, потому что он не доступен на этой машине.) В чем проблема?
Николай здравствуйте! Случайно наткнулся на ваш сайт и . был в восторге! Спасибо огромне за Вашу проделанную работу. Но у меня вопрос к вам, а как макрос будет выглядеть если надо ввести время так: 12:15-13:45 (это в одной ячейке). Заранее спасибо. =Будущий гуру Exel=
P.S. и год как убрать?
Подскажите пожалуйста, если мне нужно даты во многих столбцах (B; N;O; S) начиная с 3 строки указывать, как это прописать в макросе?
Доброго времени суток!
Прошу прощения за вопрос, в VBA новичок. К сожалению, нет времени чтобы изучить возникшую проблему, необходимо срочно сделать форму отчета кассира КМ-6 (форма типовая, скачана из альбома унифицированных форм в Консультанте). Проблема в том, что в этой форме графы "дата составления" и "время работы" представляют собой объединение нескольких ячеек и изменение диапазона указывает на неправильное событие, если я правильно поняла. Какой должен быть макрос, чтобы эта проблема была устранена?
К сожалению, не удается вставить скрин-шот для наглядности.
Заранее благодарна.
Добрый день. Скажите пожалуйста, как можно установить автоматический ввод даты и времени в нескольких столбцах сразу (с помощью макроса, функция Range("F3:F50200")
For Each cell In Target 'проходим по всем измененным ячейкам
If Not Intersect(cell, Range("F3:F50200" ) Is Nothing Then 'если изменененная ячейка попадает в диапазон A2:A100
With cell.Offset(0, 1) 'вводим в соседнюю справа ячейку дату
.Value = Now
.EntireColumn.AutoFit 'выполняем автоподбор ширины для столбца B, чтобы дата умещалась в ячейке
End With
End If
Next cell
End Sub
Excel не распознает ввод даты на английском. Подскажите, что делаю не так ? )
Если ввожу 10янв14, преобразует в дату 10.01.2014 , формат ячейки становится Custom (все ОК)
Если ввожу 10Jan14, остается в формате General
Пробовал заранее ставить формат ячейки "Date", все равно остается текст 10Jan14
Добрый день, спасибо за сайт и за эту статью. Воспользовалась вашем макросом и вставила его в свой файл "Табель уч.раб. вр." все получилось. Этим файлом еще пользуются руководители подразделений и хотелось бы для них вставить "подсказку" (скриншот как у вас в начале статьи) как всплывающую подсказку, но не знаю как вставлять анимированные картинки, пожалуйста, помогите сделать.
Добрый день, у некоторых пользователей при вводе данных в разные ячейки макрос выдает ошибку Compile erorr: Synteax erorr
Выскакивать окно Visual Basic при любом редактировании значений.
Дико неудобно, при введении каждого значения приходится закрывать окно VB, дважды нажимая на кнопки.
Один пользователь даже пробовал менять дистрибутивы винды и офиса, переустанавливать – везде одно и то же.
Судя по ошибке у стоит библиотека или скрипт, который позволяет выполнять эту процедуру.
Приветствую! Вопрос в следующем, подскажите, какой должен быть код, чтобы можно было редактировать в дальнейшем дату в введенной ячейке? Т.е я ввел 150216, он мне автоматом перевел в 15.02.2016, супер, но, если ошибся на день, пытаешься отредактировать на 14.02.2016, дата меняется на 20.04.1949 и в дальнейшем выскакивает ошибка "Run-time Error 13. Type mismatch". После этого код больше не работает и необходимо закрывать и открывать заново документ. Это первый момент.
Спасибо. Код золотой и очень полезен в работе, но хочется чтобы не было таких ошибок т.к будет активно использоваться в работе. Буду очень благодарен.
Николай! Добрый вечер! Подскажите начинающему плиз. Мне нужно тоже самое, что и в Вашем примере, только формат не часы:минуты:секунды, а просто минуты (единицы минут, несколько):секунды. Всего 3 цифры. Например, 3:40. Никак не получается сделать. Моя конечная цель - автоматизация оценивания учеников по 5 бальной системе по результатам забегов на физкультуре. Может, как-то изменить макрос?
Здравствуйте! Очень сильно стараюсь вычислить из двух результатов времени лучший, это для забегов спортсменов, т.е. 12:55:10 и 12:55:45, как определить с помощью формул в столбе №3 лучшее время (12:55:10) что бы сразу из двух результатов писался лучший. Где то я ошибаюсь в формул, что то ставлю лишнее или на оборот не до ставляю За ранее Спасибо большое.
Николай, добрый день! А почему после защиты листа, на котором применяется макрос, он перестает работать? Защита с ячеек, куда нужно вводить время, снята. Появляется ошибка Run-time error '1004': Нельзя установить свойство NumberFormat класса Range. Как устранить поломку? Спасибо заранее.
Здравствуйте, Николай. Подскажите, как правильно прописать этот макрос, чтоб он выставлял время (без даты) в определенных строках. Например E11:AI11, E12:AI12, E15:AI15, E16:AI16 и т.д.
Ребята или Николай, кто-нибудь в общем)) Помогите
Замечательный код, но вот вопрос:
Если я хочу внедрить этот код для подобного способа ввода даты в колонку где у меня уже был изначально какой-то формат ячеек к сожалению, и на какой бы другой формат я их не менял, результата нет положительного, тогда как я могу вернуть "никакой формат ячеек" или может мне что то в коде вашем поменять можно?
ЗЫ более того, я ввожу эти 6 цифр не в саму ячейку, у меня для этого есть код, с помощью которого вылазит диалоговое окно с просьбой ввести данные, этот код ссылается на нужную ячейку где я собственно и хотел бы увидеть дату. Но опять же эти 6 цифр я ввожу в диалоговое окно, для которого написал код.
Если не понятно что я имею в виду говоря про код и диалоговое окно, то вот немного подробнее:
Я настроил свою таблицу для работы максимально удобно, чтобы не возить мышкой и кликать триста раз по ячейкам, я уже в исходном коде листа прописал несколько полезных штук, таким образом, что мне надо только в начале ввести в определенную ячейку данные, после чего запускается код и цепь разных действий в виде диалоговых окон типа:
Диалоговое окно "Введите дату" - это как раз первый запрос - и мне она нужна не текущая, а та что я сам впишу, ибо это дэдлайн проекта. Текущая дата вводится автоматом в другом месте, это я уже благодаря кстати Николаю реализовал пару-тройку лет назад, за что большое спасибо и не только за это)) В общем мне пока приходится вводить дату полностью или писать типа "9 мая" чтобы быстрее было, но мне гораздо удобнее было бы все вводить на нампаде, раз 6 цифр ввел нажал Enter, вылазит следующее диалоговое окно "введите бюджет" ну и так далее, нампад - энтер, нампад-энтер — быстро и удобно, и не надо бегать по строке по разным ячейкам глазами выискивать, тем более риск ввести не туда, а колонок много и перепутать легко.
Это я для полной картины просто написал, чтобы понимали)) а то мало ли, может если способ ввода реализуется с помощью вот таких диалоговых окон, то этот ваш код для ввода даты не годится.
Заранее благодарю всех и Николая в особенности.
КСТАТИ! Раз у меня есть текущая дата, то может вместо ввода 6 цифр, можно было бы написать код таким образом чтобы при вводе например цифры 3 на столько увеличивалась текущая дата и вводилась бы как раз в ячейку дедлайна в виде даты? если так можно реализовать код, то это была бы просто бомба))
Например у меня есть текущая дата 6 мая в ячейке A22, вылазит диалоговое окно с просьбой ввести число на которое будет увеличена дата ячейки A22 и введена в ячейку K22 с учетом прибавления того числа что я ввел в диалоговое окно, например я ввел цифру 3 и в ячейке K22 появилась дата 9 мая, то есть код поссчитал 6+3=9 и ввел нужные данные в ячейку K22 в формате даты "9 мая" или "09.05.2017" - без разницы
Как считаете можно такое провернуть??
А как доработать чтобы секунды можно было так же отобразить.
пробовал менять код, но не особо получается (
Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке) .
Выбор даты — это элемент управления, который позволяет пользователям быстро вводить даты в форму Microsoft Office InfoPath, нажав кнопку маленьком всплывающем календаре. Например можно использовать элемент выбора даты для ввода дат рождения люди страхования форме. Можно также использовать элементом выбора даты для отображения стандартных дат, например текущую дату.
В этой статье
Когда следует использовать элемент выбора даты
При необходимости с помощью выбора дат:
Разрешить пользователям ввод дат, выбранном в форме, например даты начала и окончания для определенного проекта.
Функции сегодня и сейчас, чтобы отобразить текущую дату и время в форме.
Отображение дат из внешнего источника данных, например выставления счетов и отгрузки дат из базы данных заказов клиентов.
На приведенном ниже рисунке элементом выбора даты используется в шаблоне формы командировку запроса для сбора отправления Дата рейса.
Вы можете настроить Выбор даты в соответствии со своими потребностями, дважды щелкнув элемент управления в шаблоне формы и измените его свойства. Например можно указать дату по умолчанию или изменить способ отображения даты в форме.
Взаимодействие с пользователем
Выбор даты выглядеть текстовые поля, за исключением того, что отображается маленький значок календаря справа от поля. Чтобы открыть всплывающий календарь, щелкните значок календаря; Когда появится календарь, щелчок даты, они будут доступны из календаря или используйте стрелки вправо и влево кнопок для прокрутки месяцы. Чтобы вставить текущую дату пользователям, они нажмите кнопку сегодня в нижней части календаря.
Совместимость
При разработке шаблона формы в InfoPath, вы можете специального режима совместимости для шаблона формы с поддержкой браузера разработки. Когда шаблона формы с поддержкой браузера, опубликованные на сервере под управлением InfoPath Forms Services, а затем поддержкой веб-браузера, форм, основанных на шаблоне формы можно просмотреть в веб-браузере. При разработке шаблона формы с поддержкой браузера некоторые элементы управления будут недоступны в области задач элементы управления, так как они не отображается в веб-браузере.
Хотя выбора даты доступны при разработке шаблона формы с поддержкой браузера, следует учитывать следующие ограничения:
Выбор даты полностью поддерживаются только в браузерах Windows Internet Explorer. В других веб-браузеры Выбор даты в виде текстового поля, несмотря на то, что дата параметры форматирования, поддерживаются в текстовом поле.
Замещающий текст — текст, отображаемый в элементе управления в шаблоне формы. Пример замещающий текст — «Щелкните здесь и введите». Несмотря на то, что можно оставить заполнитель параметры текста для шаблонов форм с поддержкой браузера, что текст не отображается в веб-браузеры.
Вставка элемента управления "выбор даты"
Процедура для вставки элементом выбора даты немного зависят от ли разработка шаблона формы пустой или индексация внешнего вида шаблона формы базы данных или другого внешнего источника данных.
На рисунке показано, как выглядит элементом выбора даты при выборе в Режим конструктора.
Элементы управления могут быть связанными или свободными. Если элемент управления связан, он подключен к полю или группе в источнике данных, поэтому данные, вводимые в элемент управления, сохраняются в XML-файле самой формы. Когда элемент управления является свободным, он не подключен к полю или группе, а данные, вводимые в него, не сохраняются. Если выбрать элемент управления или навести на него указатель мыши, в его правом верхнем углу , отобразится текст и значок привязки. В тексте указаны группа или поле в источнике данных, к которым привязан элемент управления. Значок указывает на то, правильно ли элемент управления привязан к полю или группе. Если привязка правильная, выводится зеленый значок. Если с привязкой что-то не так, вы увидите синий или красный значок.
Источник данных для шаблона формы состоит из полей и групп, которые отображаются в виде иерархической структуры в области задач Источник данных. Элементы выбора даты всегда связаны с полями. В приведенном ниже примере отправления управляющего элемента выбора даты в шаблоне формы привязан к полю departureDate в области задач Источник данных.
Вставьте элемент выбора даты в шаблоне пустой формы
При создании нового пустого шаблона формы по умолчанию устанавливается флажок Автоматически создавать источник данных в области задач Элементы управления. Это позволяет InfoPath автоматически создавать поля и групп в источнике данных по мере добавления элементов управления в шаблон формы. Эти поля и группы представлены в виде значков папок и файлов в области задач Источник данных.
Поместите курсор в то место шаблона формы, куда вы хотите вставить элемент управления.
Если область задач Элементы управления не отображается, щелкните Другие элементы управления в меню Вставка или нажмите клавиши ALT+I, C.
В разделе Вставить элементы управления щелкните Элемент выбора даты.
Чтобы добавить метку к элементу управления, введите сверху или слева от него текст, за которым следует двоеточие (:).
Чтобы задать способ отображения даты в форме, дважды щелкните Выбор даты, который был добавлен в шаблоне формы.
Перейдите на вкладку данные и нажмите кнопку Формат.
В списке отображения даты следующим образом в диалоговом окне Формат даты выберите требуемый формат отображения.
Примечание: Можно изменить формат отображения даты только в случае тип данных текст, дату, или дата и время.
Вставьте элемент выбора даты на шаблон формы, основанного на существующий источник данных
Если основе внешнего вида шаблона формы на существующий файл язык XML (Extensible Markup), базы данных или веб-службы, InfoPath извлекает поля и группы в области задач Источник данных из соответствующего источника данных. В этом случае можно добавить, перетащив поле выбора даты из области задач Источник данных в шаблоне формы или путем вставки Выбор даты с помощью области задач элементы управления, как описано в приведенной ниже процедуре элементом выбора даты:
Поместите курсор в то место шаблона формы, куда вы хотите вставить элемент управления.
Если область задач Элементы управления не отображается, щелкните Другие элементы управления в меню Вставка или нажмите клавиши ALT+I, C.
В разделе Вставить элементы управления щелкните Элемент выбора даты.
В диалоговом окне Привязка выбора дат выберите поле, в котором нужно сохранить данные выбора даты и нажмите кнопку ОК.
InfoPath в качестве используется имя поля или группы подпись элемента управления. При необходимости измените текст подписи.
Чтобы задать способ отображения даты в форме, дважды щелкните Выбор даты, который был добавлен в шаблоне формы.
На вкладке данные нажмите кнопку Формат.
В списке отображения даты следующим образом в диалоговом окне Формат даты выберите требуемый формат отображения.
Примечание: Можно изменить формат отображения даты, только если тип данных текст, дату, или дата и время.
Совет: В области задач Источник данных также можно использовать для вставки элементов управления. В области задач Источник данных щелкните правой кнопкой мыши поле, которое требуется связать «Выбор даты» и нажмите кнопку Управления "Выбор даты" в контекстном меню.
Отобразить текущую дату в календарике
Чтобы автоматически вставить текущую дату в форме при ее открытии, можно использовать функцию сегодня с элементе выбора даты.
Вставьте элемент выбора даты в шаблоне формы.
Дважды щелкните Выбор даты, вставленной в шаблоне формы.
Откройте вкладку Данные.
В разделе Значение по умолчанию нажмите кнопку Вставить формулу .
В диалоговом окне Вставка формулы нажмите кнопку Вставить функцию.
В списке категорий в диалоговом окне Вставка функции выберите Дата и время.
В списке функции выберите сегодня и нажмите кнопку ОК два раза, чтобы вернуться в диалоговое окно Свойства выбора даты.
Обратите внимание, что в поле значение отображается сегодня().
В разделе Значение по умолчанию снимите флажок обновлять это значение при пересчете результатов формулы.
Примечание: Если снять этот флажок установлен, дата, не обновляется автоматически при каждом открытии формы на основе этого шаблона формы. Идеально подходит в тех случаях, когда пользователи могут видеть дату создания формы. Можно оставить установленным флажком в случаях, когда у вас есть последнее обновление или в прошлый раз открыт на поле, которое необходимо изменять каждый раз при открытии формы дату.
Чтобы проверить изменения, нажмите кнопку Просмотр на стандартной панели инструментов или нажмите клавиши CTRL+SHIFT+B.
Убедитесь, что дату, которая появляется в окне выбора даты выглядит так, как требуемое для. Если это не так, вы можете изменить способ отображения даты или времени, нажав кнопку " Формат " в диалоговом окне Свойства выбора даты.
Отображение текущих даты и времени в календарике
Чтобы автоматически вставить текущую дату и время в форме при ее открытии, можно использовать функцию теперь в элементе выбора даты.
Вставьте элемент выбора даты в шаблоне формы.
Дважды щелкните Выбор даты, вставленной в шаблоне формы.
Откройте вкладку Данные.
В поле тип данных выберите Дата и время (dateTime).
В диалоговом окне Формат даты и времени в списке Формат отображения времени следующим образом нужный вариант и нажмите кнопку ОК.
В диалоговом окне Свойства выбора даты в поле Значение по умолчанию, нажмите кнопку Вставить формулу .
В диалоговом окне Вставка формулы нажмите кнопку Вставить функцию.
В списке категорий в диалоговом окне Вставка функции выберите Дата и время.
В списке функциинажмите кнопку выполнить и нажмите кнопку ОК два раза, чтобы вернуться в диалоговое окно Свойства выбора даты.
Обратите внимание на то, что отображается в поле значениеnow().
В разделе Значение по умолчанию снимите флажок обновлять это значение при пересчете результатов формулы.
Примечание: Если снять этот флажок установлен, дата, не обновляется автоматически при каждом открытии формы на основе этого шаблона формы. Идеально подходит в тех случаях, когда пользователи могут видеть дату создания формы. Можно оставить установленным флажком в случаях, когда у вас есть последнее обновление или в прошлый раз открыт на поле, которое необходимо изменять каждый раз при открытии формы дату.
Чтобы проверить изменения, нажмите кнопку Просмотр на стандартной панели инструментов или нажмите клавиши CTRL+SHIFT+B.
Убедитесь, что дату, которая появляется в окне выбора даты выглядит так, как требуемое для. Если это не так, вы можете изменить способ отображения даты или времени, нажав кнопку " Формат " в диалоговом окне Свойства выбора даты.
Советы по макету
Используйте приведенные ниже советы помогут вам настроить внешний вид, размер и других аспектов элементом выбора даты:
Чтобы одновременно изменить размер нескольких выбора даты, выделите выбора даты, размер которых нужно изменить, в меню Формат выберите пункт Свойства и внесите необходимые изменения на вкладке размер.
Чтобы изменить цвет элементом выбора даты или границу, Выбор даты, в меню Формат выберите, выберите команду границы и заливка и внесите необходимые изменения.
Чтобы настроить текст, встречающийся в элементом выбора даты, используйте поля Шрифт и Размер шрифта на панели инструментов Форматирование. Чтобы одновременно изменить шрифт и размер шрифта для всех выбора даты на шаблон формы, щелкните правой кнопкой мыши Выбор даты с форматированием и нажмите кнопку Применить шрифт для всех элементов управления выбора даты в контекстном меню.
Чтобы увидеть, как будет выглядеть ваш выбор даты с текстом, в нем, в меню Вид нажмите кнопку Образец данных. Это позволит понять, как будет выглядеть формы при заполнении его.
В некоторых случаях текст внутри Выбор даты» и «метка слева от календарике может отображаться для немного отсутствовать выравнивания. Чтобы быстро изменить выравнивание их, дважды щелкните Выбор даты, нажмите кнопку Выровнять на вкладке размер и нажмите кнопку Применить. В случае выбора метки и даты в разных ячейках макетной таблицы, щелкните правой кнопкой мыши ячейку, содержащую подпись, в контекстном меню выберите команду Свойства таблицы и на вкладке Ячейка в группе Вертикальное выравнивание выберите Центр.
Чтобы изменить способ отображения даты, дважды щелкните Выбор даты, перейдите на вкладку данные и нажмите кнопку " Формат ". Выбор формата отображения в диалоговом окне Формат даты.
В столбце введите первые несколько символов для записи.
Если введенные символы совпадают с существующими записями в этом столбце, Excel представляет меню со списком записей, уже используемых в столбце.
Нажмите клавишу СТРЕЛКА ВНИЗ, чтобы выбрать совпадающий элемент, а затем нажмите клавишу RETURN.
В Excel автоматическое завершение выполняется только для тех записей, которые содержат текст или комбинацию текста и чисел. Записи, содержащие только числа, даты или время, не завершались.
Записи, повторяющиеся в строке, не включаются в список совпадающих записей.
Если вы не хотите, чтобы введенные вами записи автоматически совпадали с другими записями, этот параметр можно отключить. В меню Excel выберите пункт Параметры. В списке Формулыи списки щелкните Автозавершение , а затем с помощью кнопки Включить автозавершение для значений ячеев.
Выберем ячейки, содержащие данные, которые нужно повторить в смежных ячейках.
Перетащите маркер заполнения ячейки, которые вы хотите заполнить.
Примечание: При выборе диапазона ячеек, который вы хотите повторить в смежных ячейках, можно перетащить его вниз по одному столбец или через одну строку, но не вниз по нескольким столбцам и по нескольким строкам.
Нажмите смарт-кнопку Параметры автоза заполнения и сделайте одно из следующих действий:
Необходимые действия
Копирование всего содержимого ячейки, включая форматирование
Копирование только форматирования ячеок
Выберите только форматирование заливки.
Копирование содержимого ячейки без форматирования
Чтобы быстро ввести одинаковые данные во множество ячеек одновременно, выйдите из всех ячеек, введите нужные данные и нажмите control+RETURN. Этот метод работает во всех ячейках.
Если вы не хотите, чтобы смарт-кнопка Параметры автозаполн отображаемая при перетаскиваниях, ее можно отключить. В меню Excel выберите пункт Параметры. В области Редактированиещелкните Изменить и сведите кнопок Показать параметры вставки.
Excel можно продолжать ряд чисел, комбинаций с текстом и числами или формул на основе заро шаблона. Например, можно ввести Элемент1 в ячейку, а затем заполнить ячейки ниже или вправо с помощью элементов 2, Элемент3, Элемент4 и т. д.
Вы можете выбрать ячейку, содержаную начальное число или комбинацию с текстом и числом.
Перетащите маркер заполнения ячейки, которые вы хотите заполнить.
Примечание: При выборе диапазона ячеек, который вы хотите повторить в смежных ячейках, можно перетащить его вниз по одному столбец или через одну строку, но не вниз по нескольким столбцам и по нескольким строкам.
Нажмите смарт-кнопку Параметры автоза заполнения и сделайте одно из следующих действий:
Необходимые действия
Копирование всего содержимого ячейки, включая формулы и форматирование
Копирование только форматирования ячеок
Выберите только форматирование заливки.
Копирование содержимого ячейки, включая формулы без форматирования
Примечание: Чтобы изменить узор заливки, вы можете выбрать несколько начальных ячеек, прежде чем перетаскивать его. Например, чтобы заполнить ячейки такими числами, как 2, 4, 6, 8. введите 2 и 4 в двух начальных ячейках и перетащите его.
Ячейки можно быстро заполнить с помощью даты, времени, рабочих дней, месяцев или лет. Например, можно ввести в ячейку понедельник, а затем заполнить ячейки ниже или справа со вторника, среды, четверга и т. д.
Вы выберите ячейку с начальной датой, временем, рабочим днем, месяцем или годом.
Перетащите маркер заполнения ячейки, которые вы хотите заполнить.
Примечание: При выборе диапазона ячеек, который вы хотите повторить в смежных ячейках, можно перетащить его вниз по одному столбец или через одну строку, но не вниз по нескольким столбцам и по нескольким строкам.
Нажмите смарт-кнопку Параметры автоза заполнения и сделайте одно из следующих действий:
Необходимые действия
Копирование всего содержимого ячейки, включая формулы и форматирование, без повторения ряда
Заполнение ячеек на основе начальных данных в первой ячейке
Копирование только форматирования ячеок
Выберите только форматирование заливки.
Копирование содержимого ячейки, включая формулы без форматирования
Заполнение ячеек последующими датами с помощью начальной даты в первой ячейке
Используйте название начального дня недели в первой ячейке, чтобы заполнить ячейки последующими рабочими днями (о пропущенные суббота и воскресенье)
Используйте имя начального месяца в первой ячейке для заполнения ячеек последующими месяцами года.
Использование начальной даты в первой ячейке для заполнения ячеек датой путем последующих годовых приращений
Примечание: Чтобы изменить узор заливки, вы можете выбрать несколько начальных ячеек, прежде чем перетаскивать его. Например, если вы хотите заполнить ячейки с помощью ряда, пропускаемого каждый день, например понедельник, среда, пятница и т. д., введите понедельник и среду в двух начальных ячейках, а затем перетащите его.
См. также
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.
Если вам часто приходится вводить даты и время в ячейки, то вам должна понравиться идея писать их сокращенно, без точек-дробей – просто как число. Чтобы в заданном диапазоне ячеек листа, например, число 250616 после ввода и нажатия клавиши Enter автоматически превращалось в 25.06.2016.
Как в Excel настроить быстрый ввод даты без разделителей
Для реализации такого возможны два варианта.
Первый – использовать функцию преобразования текста в дату ДАТАЗНАЧ (DATEVALUE) и функции извлечения фрагментов из текста ЛЕВСИМВ (LEFT), ПРАВСИМВ (RIGHT) и ПСТР (MID), чтобы разделить шесть введенных чисел по два, добавить к ним точки и составить из них полноценную дату в соседней ячейке.
Для реализации быстрого ввода даты возможны два варианта
В англоязычном варианте: =DATEVALUE(LEFT(D1;2)&”.”&MID(D1;3;2)&”.”&RIGHT(D1;2)) .
Если же хочется выполнять это преобразование прямо в той же ячейке, куда вводятся числа, то без макроса не обойтись. Для этого щелкните по ярлычку листа, куда будут вводиться даты и время, и выберите команду Исходный текст (View Code). В открывшееся окно редактора Visual Basic вставьте следующий код.
Private Sub Worksheet_Change(ByVal Target As Range) Dim vVal Dim StrVal As String Dim dDate As Date If Target.Cells.Count > 1 Then Exit Sub If Not Intersect(Target, Range("A2:A10")) Is Nothing Then With Target StrVal = Format(.Text, "000000") If IsNumeric(StrVal) And Len(StrVal) = 6 Then Application.EnableEvents = False dDate = DateValue(Left(StrVal, 2) & "/" & Mid(StrVal, 3, 2) & "/" & Right(StrVal, 2)) .NumberFormat = "dd/mm/yyyy" .Value = CDate(DateSerial(Year(dDate), Month(dDate), Day(dDate))) End If End With End If Application.EnableEvents = True End Sub
Диапазон A2:A10 в коде замените на свою область листа, куда подобным образом собираетесь вводить даты.
Читайте также: