gpt4 book ai didi

excel - 带有链接到单元格值的日期参数的 VBA Excel SQL 查询

转载 作者:行者123 更新时间:2023-12-02 22:13:59 26 4
gpt4 key购买 nike

我正在尝试使用日期参数将数据从 SQL 数据库提取到 Excel 中。以下 VB 查询有效。我希望查询使用电子表格中的单元格值,而不是手动更改 VB 查询的 TS 中的日期值。单元格 A1 包含 >= TS 的日期,单元格 A2 包含 < TS

的日期
Sub vba_query_01()

Dim oCon As ADODB.Connection
Dim oRS As ADODB.Recordset
Set oCon = New ADODB.Connection
oCon.ConnectionString = "DRIVER=SQL Server;SERVER=GSEYBERTHNB7
\SQLEXPRESS;UID=gseyberth;Trusted_Connection=Yes;APP=2007 Microsoft Office
system;WSID=GSEYBERTHNB7;DATABASE=DATA_LOGGER"
oCon.Open
Set oRS = New ADODB.Recordset
oRS.ActiveConnection = oCon
oRS.Source = "Select * FROM DATA_LOGGER.dbo.LYLE LYLE WHERE (( [Date] >= {TS '2013-04-24
07:00:00'} )) AND (( [Date] < {TS '2013-04-24 15:00:00'} ))"
oRS.Open
Range("A10").CopyFromRecordset oRS
oRS.Close
oCon.Close
If Not oRS Is Nothing Then Set oRS = Nothing
If Not oCon Is Nothing Then Set oCon = Nothing

End Sub

最佳答案

感谢您的帮助。让它与以下内容一起工作:

在 Excel 中,使用公式

=TEXT(B1,"YYYY-MM-DD hh:mm:ss")

将 Excel 日期转换为文本。开始日期位于单元格 B3 中,结束日期位于单元格 B4 中

将 VB 更改为以下内容:

oRS.Source = "Select * FROM DATA_LOGGER.dbo.LYLE_CH2 LYLE_CH2 WHERE (( [Date] >= {TS '" & Range("B3") & "'} )) AND (( [Date] < {TS '" & Range("B4") & "'} )) ORDER BY [Date]"

必须添加ORDER BY以正确的时间顺序保存查询中的数据,以便进行电子表格计算。

关于excel - 带有链接到单元格值的日期参数的 VBA Excel SQL 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16494169/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com