Страницы: 1
RSS
Преобразование текста мм/дд/гггг в дату
 
Здравствуйте. Нужна помощь. Копирую значение из интернета (ячейка A1). Оно выглядит в формате даты (мм/дд/гггг). Но вставляется видимо как текст. Я хочу видеть это значение в формате даты (дд.мм.гггг). Как это можно сделать?
 
Перед копированием данных измените языковые параметры Windows'а - выберите Английский (США). После вставки данных верните Русский (Россия).
Изменено: Karataev - 13.02.2019 22:26:32
 
Karataev,Большое спасибо Вам)
 
Или так (выделите ячейки с датами):
Код
Sub test()
  'Selection.Replace "/", "/" не работает
  Selection.Value = Selection.Value
End Sub
Изменено: sokol92 - 13.02.2019 22:05:30
Владимир
 
sokol92, возможны ошибки. У Nazar93, даты в "формате даты (мм/дд/гггг)", и если день меньше 13, то, например, вместо 5 апреля (04/05/2019) вернет 4 мая.
 
Согласен, большое спасибо! Исправил на другую "экзотическую" конструкцию, которая, надеюсь, работает.
P.S. А ведь уже зарекался не писать без Excel :(  
Изменено: sokol92 - 13.02.2019 22:08:34
Владимир
 
В этой теме очень закручено. Предположу, что если в интернете (откуда автор копирует данные) дата вида 05/01/2019 (1 мая), то она изначально встанет с точками и неправильно 05.01.2019.
Если дата вида 12/28/2018, то она встанет в виде текста.
Получается, что у автора темы изначально в файл неправильно встают даты вида 05/01/2019, а он наверное это еще не заметил.
Значит автору темы надо переводить формат листа в текстовый формат перед вставкой данных, а затем использовать что-нибудь, чтобы привести даты к нужному виду.

Могу предложить такой порядок действий. Сначала автору надо сделать на листе формат "Текстовый". Затем автор копирует данные из интернета на лист. Затем выделяет столбец, в котором даты, и запускает этот макрос (за основу взял код из поста 4):
Макрос
Изменено: Karataev - 13.02.2019 22:33:48
 
Макрос из #4 (исправленный) корректно обрабатывает тексты вида мм/дд/гггг при любых региональных настройках.
Владимир
Страницы: 1
Наверх