Sql server 我需要将sql server结果导出到新的excel工作簿?
我需要一个新的工作簿的结果,目前我在现有的工作簿中得到的结果Sql server 我需要将sql server结果导出到新的excel工作簿?,sql-server,excel,vba,Sql Server,Excel,Vba,我需要一个新的工作簿的结果,目前我在现有的工作簿中得到的结果 Sub ConnectSqlServer() Dim conn As ADODB.Connection Dim rs As ADODB.Recordset Dim sConnString As String Dim rsstring As String Workbooks.Add ActiveWorkbook.SaveAs "C:\WorkbookName.xls" sConnString = "Provider=SQLOLEDB;
Sub ConnectSqlServer()
Dim conn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim sConnString As String
Dim rsstring As String
Workbooks.Add
ActiveWorkbook.SaveAs "C:\WorkbookName.xls"
sConnString = "Provider=SQLOLEDB;Data Source=PRATEEP-PC\SQLEXPRESS;" & _
"Initial Catalog=PPDS_20Dec_V1_Decomposition;" & _
"Integrated Security=SSPI;"
Set conn = New ADODB.Connection
Set rs = New ADODB.Recordset
conn.Open sConnString
rsstring = "SELECT * FROM GE_PRODUCT_RESOURCE_MASTER;"
rs.Open rsstring, sConnString
ActiveSheet.Range("B3").CopyFromRecordset rs
rs.Close
conn.Close
End Sub
试过了,效果很好。无论如何,要让它防弹
Sub ConnectSqlServer()
Dim conn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim sConnString As String
Dim rsstring As String
Set NewWorkbook = Workbooks.Add 'To avoid ActiveWorkbook
sConnString = "Provider=SQLOLEDB;Data Source=PRATEEP-PC\SQLEXPRESS;" & _
"Initial Catalog=PPDS_20Dec_V1_Decomposition;" & _
"Integrated Security=SSPI;"
Set conn = New ADODB.Connection
Set rs = New ADODB.Recordset
conn.Open sConnString
rsstring = "SELECT * FROM GE_PRODUCT_RESOURCE_MASTER;"
rs.Open rsstring, sConnString
NewWorkbook.Range("B3").CopyFromRecordset rs 'directly call the NewWorkbook
rs.Close
conn.Close
NewWorkbook.SaveAs "C:\WorkbookName.xls" 'Save after your change
End Sub
仍然是一样的,结果没有进入到新的工作中,它仍然在现有的工作簿中得到吗?您的工作簿如何命名?您的新工作簿应如何命名?是的,我的工作簿命名为“mdmfinal”…新工作簿可以是任何内容…我只需要新工作簿中的结果!!!在您提供的代码块中,没有任何函数可以将结果保存到mdmfinal中。我想到了一个主意,最终你没有权利在C上保存:试着只写工作簿名,这样它就会保存在主文件所在的同一个文件夹中。仍然不能解释为什么它会被保存在你的主人那里。