Excel 2002 веб-запрос испортил даты en-GB - PullRequest
2 голосов
/ 19 ноября 2008

Добрый день,

У меня есть веб-запрос в Excel 2002, идущий к веб-странице, которая возвращает столбец даты. Даты возвращаются как DD/MM/YYYY, как я хотел бы показать их в моей электронной таблице. На моем компьютере с Excel установлены региональные настройки en-GB, и в разделе «Свойства обозревателя» выбран только английский язык.

Тем не менее, веб-запрос извлекает даты как MM/DD/YYYY, что неправильно интерпретируется Excel.

Как я могу заставить веб-запрос возвращать даты в моих региональных настройках, MM/DD/YYYY?

Ответы [ 6 ]

2 голосов
/ 21 ноября 2008

Можете ли вы изменить "веб-запрос"?

Универсальный формат даты - лучший способ для продуктов Office распознавать даты и время. У меня были похожие проблемы с датами в Великобритании и США, и я обнаружил, что кодирование дат в этом формате избавляет вас от многих проблем.

Universal Date format is : "yyyy-mm-dd hh:mm:ss"
0 голосов
/ 18 октября 2013

В редакторе VBA попробуйте установить

WebDisableDateRecognition

свойство внутри стандартной команды веб-запроса:

With Selection.QueryTable
    .Connection = _
    "URL;http://whateverYourURLis"
    .WebSelectionType = xlSpecifiedTables
    .WebFormatting = xlWebFormattingNone
    .WebTables = "7"
    .WebPreFormattedTextToColumns = True
    .WebConsecutiveDelimitersAsOne = True
    .WebSingleBlockTextImport = False
    .WebDisableDateRecognition = True
    .WebDisableRedirections = False
    .Refresh BackgroundQuery:=False
End With

(Обратите внимание, что вы можете получить то же, что и выше, просто записав макрос во время выполнения веб-запроса ...)

Здесь хорошо сработало, надеюсь, оно вам подходит.

Ура!

0 голосов
/ 24 ноября 2010

В Excel 2007 изменение формата даты в региональных настройках работало нормально.

0 голосов
/ 27 ноября 2008

Веб-запрос Excel ужасен с точки зрения международных связей. У меня это тоже не сработало. В конце концов мне нужно было просто вставить данные вручную с помощью макроса, проанализировать их по месту и поместить на лист. К счастью, я запросил веб-сервис, который возвращал XML, так что это было легко. Если вы разбираете HTML, делайте то, что Томалак предложил .

0 голосов
/ 20 ноября 2008

Формат веб-страницы - en-GB. Я изменил свои региональные настройки в Панели управления на en-GB. Я изменил свой язык настроек Интернета на en-GB.

Тем не менее, веб-запрос Excel возвращает данные в en-US. Я не понимаю, как что-то из того, что вы предложили, могло бы помочь. В этом случае постобработка не возможна.

0 голосов
/ 19 ноября 2008

Возможно, вам повезло, и Excel понимает либо атрибут HTML lang, либо метатег <meta http-equiv="content-language" content="...">. Честно говоря, я думаю, что это не имеет значения.

Если у вас есть контроль над веб-сайтом, вы можете попробовать добавить их и посмотреть, если это что-то изменит. OTOH - если у вас был контроль над веб-страницей, вы можете изменить формат даты.

Альтернативой может быть полное отключение распознавания даты и последующая обработка вручную после запроса. Для этого заново создайте веб-запрос и в диалоговом окне «Новый веб-запрос» нажмите кнопку «Параметры ...» в правом верхнем углу. Есть флажок «Отключить распознавание даты».

...