【发布时间】:2016-09-14 00:27:24
【问题描述】:
我的实际代码如下:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Call extract
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
End SubSub extract()
Dim cn As Object
Dim uid1, pass1, srvrnm --pass parm
Set cn = CreateObject("ADODB.Connection")
Dim rs As Object
Set rs = CreateObject("ADODB.Recordset")
Dim cmdSQLData As Object
Set cmdSQLData = CreateObject("ADODB.Command")
uid1 = "SSSS" --user-id
pass1 = "JJJJ" --pass words
srvrnm = "JJJJSDS" --server name
On Error GoTo err1
cn.Open "Driver=Teradata; DBCName="& srvrnm& ";uid="& uid1& ";AUTHENTICATION=ldap;pwd="& pass1& "; Trusted_Connection=True"
Set cmdSQLData.ActiveConnection = cn
On Error Resume Next
query1 = "select tablename,databasename as xx from DBC.TABLES sample 2;"
cmdSQLData.CommandText = query1
cmdSQLData.CommandTimeout = 0
Set rs = cmdSQLData.Execute()
Sheet1.Cells(2, 1) = rs.Fields(0).Value
Set rs = Nothing
err1:
End Sub
我的问题是如何在 excel 行和列中获取数据库表结果,其中行数与表中的行数以及相应的列数
【问题讨论】:
-
您能否正确缩进代码,很难理解那里发生的事情
-
可以在上面的VB中选择“多个SELECT STAMENTS”吗?并且结果将与相应的表名存储在同一个 excel 中?