Мне нужно отформатировать эти даты в формате yyyy/mm/dd, чтобы запросить базу данных MySQL - глядя на эти два утверждения, вы думаете, что они произведут тот же результат, не так ли?Функция «Формат» функции «VBA» несовместимо -
dateOne = Format(#9/1/2013#, "yyyy/mm/dd")
dateTwo = Format(#9/1/2013#, "yyyy/mm/dd")
dateOne теперь равно 2013/09/01, а dateTwo - 9/1/2013. Я сумасшедший? Это происходит в самом begininng моего сценария, я получил Option Explicit, и я знаю, что сохранение в правильных переменных ..
Sub main()
Dim dateOne, dateTwo As Date
Dim answer As Integer
answer = MsgBox("Would you like to generate a Transfer Report?", vbYesNoCancel + vbQuestion)
If answer <> 6 Then Exit Sub
'dateOne = InputBox("Input the first (earliest) date in mm/dd/yyyy format")
'dateTwo = InputBox("Input the second (latest) date in mm/dd/yyyy format")
dateOne = Format(#9/1/2013#, "yyyy/mm/dd")
dateTwo = Format(#9/1/2013#, "yyyy/mm/dd")
Теперь dateOne является 2013/09/01, и dateTwo является 9/1 /2013.
Я изначально имел их в разные сроки, чтобы запросить диапазон - прежде чем ударить головой в мою клавиатуру, чтобы сделать абсолютно уверенным Я выполнял функцию таким же образом на обоих, я скопировал текст в dateOne , наклеил его на строку вниз и изменил переменную до даты. Точная та же команда, выполняемая двумя строками, создавая разные результаты. Сценарий почти завершен, но как, почему, он делает то, что он делает?
Возможно, я могу попросить пользователя ввести его в формате yyyy/mm/dd, но я действительно хочу знать, почему это происходит. Может ли кто-нибудь помочь?
Спасибо. Я потратил слишком много времени на это. Я изменил их оба на строки, и теперь я могу завершить этот проект. Я искренне ценю это. – Acantud