Так что это должно быть легко, я уверен.
У меня есть стандартный столбец SQL datetime, я хочу получить все записи за последние 24 часа предпочтительно, используя vba в Excel, ive проблема сводилась к «только последним календарным дням», чтобы попытаться получить лучшее представление о том, как решить эту проблему, и не может понять, как действовать дальше.
в основном: VBA примет, если я вручную введу дату в часть между оператором sql, но не принимает переменную с датой.
Обыгрывая ее, «кажется», что vba форматирует поля, объявленные как даты в виде мм / дд / гггг гггг / мм / дд в стандартном столбце Datetime в sql, что, вероятно, является проблемой! Я играл с командой convert, но безрезультатно. Это работает, если я вручную ввожу даты, правильно отформатированные в значения переменных.
код ниже:
Dim DateVar As Date
Dim DateStart As Date
Dim DateEnd As Date
DateVar = Range("A2").Value
DateStart = DateVar - 1
DateEnd = DateVar + 1
adoDbConn.Open **CONNECTION STRING GOES HERE**
selectCmd.ActiveConnection = adoDbConn
selectCmd.CommandText = "SELECT DateTime, Machine_Number, FROM [33_TestImport]
Where Machine_Number = " & Machvar & "
AND DateTime BETWEEN " & DateVar & " AND " & DateEnd &
ORDER By DateTime "