首先我很抱歉英语不好,但我会尽力的。
我有一个在vba宏中运行的oracle查询,我需要将sqlselect中的日期设置为与表单元格相关的变量,我已经设法使sqlconsult工作了。
我真的很感激一些帮助,我真的卡住了,向下去的工作代码。
Private Sub cmdConexaoBD_Click()
Dim sql As String
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim i As Integer
'define a conexão com o banco de dados
Set cn = New ADODB.Connection
cn.CursorLocation = adUseClient
cn.Open "Driver={Microsoft ODBC for Oracle}; " & _
"CONNECTSTRING=database;uid=username;pwd=password;"
Set rs = New ADODB.Recordset
sql = "SELECT NUMOS,MIN(DTINICIOOS),MAX(DTFIMOS),MAX(DTFIMOS)-MIN(DTINICIOOS) FROM PCMOVENDPEND WHERE DATA >= TRUNC(SYSDATE) GROUP BY NUMOS"
rs.Open sql, cn
Range("A1").Value = "OS"
Range("B1").Value = "DT"
Range("C1").Value = "DT"
Range("D1").Value = "TEMPO"
i = 1
If Not rs.EOF Then
Do While Not rs.EOF
Range("A" & i + 1).Value = rs(0)
Range("B" & i + 1).Value = rs(1)
Range("C" & i + 1).Value = rs(2)
Range("D" & i + 1).Value = rs(3)
rs.MoveNext
i = i + 1
Loop
End If
cn.Close
End Sub
写在哪里 WHERE DATA >= TRUNC(SYSDATE)
“data”实际上是date(葡萄牙语),我想把date设置为一个引用一个表单元格的变量,这样我就可以在电子表格中更改它,并且在不更改代码的情况下导入该日期的数据。
希望我说清楚了,谢谢!
2条答案
按热度按时间s8vozzvw1#
例如:
uoifb46i2#
最好使用绑定变量,因此需要这样的内容: