2017-02-07 9 views
0

Формат даты Показывает недействительную дату с пользовательской датой. Когда я использую «Дата» вместо «25 мая», она показывает вчерашнюю дату.Как получить вчерашнюю дату vbscript

function GetYD() 
    Dim dt, yesterday 

    dt = DateAdd("d", -1, "25th May") 

    yesterday = Right(Year(dt),2) & Right("0" & Month(dt),2) & Right("0" & Day(dt),2) 
    msgbox yesterday 
    GetYD = yesterday 
end function 
+1

Вы читали [ 'DATEADD()' документации] (https://msdn.microsoft.com/en-us/library/cb7z8yf9 (v = vs.84) .aspx) ? – Lankymart

+0

Возможный дубликат [Хотите получить предыдущую дату с текущей даты] (http://stackoverflow.com/questions/32053267/want-to-get-previous-date-from-current-date) – Lankymart

+0

Также рекомендуем [Функция CDate] (https://msdn.microsoft.com/en-us/library/2dt118h2(v=vs.84).aspx), чтобы понять, как структурируются типы 'Date' в VBScript. – Lankymart

ответ

2

Обязательно укажите ему строку, которая может быть проанализирована. Всегда используйте цифры, если это возможно, и вы даже не указали год.

Формат yyyy-mm-dd, вероятно, будет работать лучше всего, так как он (как для людей, так и для компьютеров) абсолютно недвусмыслен. Так что попробуйте его с помощью

DateAdd("d", -1, "2017-05-25") 

 Смежные вопросы

  • Нет связанных вопросов^_^