我需要一个excel表和一个批处理文件,以便:当批处理文件运行时,excel表打开,在SQL数据库上运行查询,并将内容保存到不同名称的excel文件。
我知道这是在问很多,所以我为长期请求道歉。我确切地知道我需要执行的查询,并且我知道批处理文件应该如何工作。
我遇到的问题是打开文件并执行查询时运行的excel中的VBA代码。因此,虽然我知道如何在SAS和Micorsoft SQL中运行sql查询,但我很难弄清楚如何使excel在VBA代码中自动执行这些查询。这就是我所拥有的,但它*当我运行代码时,我收到错误“编译错误:用户定义的类型未定义”
答案 0 :(得分:0)
提供帮助的步骤
答案 1 :(得分:0)
我像这样使用
Sub getDAtaFromServer()
Dim con As New ADODB.Connection
Dim cmd As New ADODB.Command
Dim rst As New ADODB.Recordset
Dim strOldUDT As String
Dim strNewUDT As String
Dim aryTempUDT() As String
Dim strTempID As String
Dim i As Integer
con.ConnectionString = "Provider=SQLOLEDB.1;" _
& "Server=(local);" _
& "Database=TEST;" _
& "Integrated Security=SSPI;" _
& "DataTypeCompatibility=80;"
con.Open
Set cmd.ActiveConnection = con
cmd.CommandText = "SELECT * FROM [table] "
Set rst = cmd.Execute
Range("A1").CopyFromRecordset rst
con.Close
Set con = Nothing
End Sub