101

Ввод даты без разделителей

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

Этот вариант с помощью макроса предоставляет возможность писать даты сокращенно, без точек/дробей - просто как число, т.е. 101019 автоматически превратится в 10.10.2019.

Для этого создайте документ Excel с поддержкой макросов. На открытом листе щелкните правой клавишей мыши по ярлычку листа,

выберите команду «Просмотреть код», в более ранних версиях Word «Исходный текст». В открывшееся окно редактора 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 замените на свои области ячеек листа, куда будут вводиться даты.


Даты до 10 можно вводить одной цифрой, либо с нулём (01, 02 и т.д.), месяц и год должен быть только двухзначной цифрой.


В случае ошибки ввода, если вместо минимум 5 цифр ввести 4 или неправильно указать месяц, то даты будут выводиться неверно и может выйти окошко

В этом случае нажмите «End», сохраните и закройте документ, затем откройте заново и продолжайте вводить цифры дальше.

MS, Libreoffice & Google docs

762 поста14.9K подписчика

Правила сообщества

1. Не нарушать правила Пикабу

2. Публиковать посты соответствующие тематике сообщества

3. Проявлять уважение к пользователям

4. Не допускается публикация постов с вопросами, ответы на которые легко найти с помощью любого поискового сайта.

По интересующим вопросам можно обратиться к автору поста схожей тематики, либо к пользователям в комментариях


Важно - сообщество призвано помочь, а не постебаться над постами авторов! Помните, не все обладают 100 процентными знаниями и навыками работы с Office. Хотя вы и можете написать, что вы знали об описываемом приёме раньше, пост неинтересный и т.п. и т.д., просьба воздержаться от подобных комментариев, вместо этого предложите способ лучше, либо дополните его своей полезной информацией и вам будут благодарны пользователи.

Утверждения вроде "пост - отстой", это оскорбление автора и будет наказываться баном.

2
Автор поста оценил этот комментарий
Быдлокод какой-то. Замените диапазон сами... Че, каждый раз менять? Раз уж взялся за работу, делай ее нормально. Selection используй для выделенного диапазона. Повесь макрос на кнопку на панели или на сочетания клавиш.
раскрыть ветку (1)
Автор поста оценил этот комментарий

Поставить один раз A2:A100000 и всё, в чём проблема?

показать ответы