sql - 将 Sql Server 数据导出到格式化的 Excel
问题描述
有没有办法将一些数据从 SQL Server 导出到以前格式化的 Excel?例如,用户已将 Excel 格式化为他自己的报告,并希望在此报告中包含来自 Sql(行)的数据?如何做到这一点?谢谢!
解决方案
在 SQL Server 和 Excel 之间移动数据的方法有很多。
' set a reference to Microsoft ActiveX Data Objects 2.8 Library'
Sub ADOExcelSQLServer()
' Carl SQL Server Connection
'
' FOR THIS CODE TO WORK
' In VBE you need to go Tools References and check Microsoft Active X Data Objects 2.x library
'
Dim Cn As ADODB.Connection
Dim Server_Name As String
Dim Database_Name As String
Dim User_ID As String
Dim Password As String
Dim SQLStr As String
Dim rs As ADODB.Recordset
Set rs = New ADODB.Recordset
Server_Name = "your_server_name" ' Enter your server name here
Database_Name = "NORTHWND" ' Enter your database name here
User_ID = "" ' enter your user ID here
Password = "" ' Enter your password here
SQLStr = "SELECT * FROM [Customers]" ' Enter your SQL here
Set Cn = New ADODB.Connection
Cn.Open "Driver={SQL Server};Server=" & Server_Name & ";Database=" & Database_Name & _
";Uid=" & User_ID & ";Pwd=" & Password & ";"
rs.Open SQLStr, Cn, adOpenStatic
' Dump to spreadsheet
For iCols = 0 To rs.Fields.Count - 1
Worksheets("Sheet1").Cells(1, iCols + 1).Value = rs.Fields(iCols).Name
Next
With Worksheets("sheet1").Range("a2:z500") ' Enter your sheet name and range here
'.ClearContents
.CopyFromRecordset rs
End With
' Tidy up
rs.Close
Set rs = Nothing
Cn.Close
Set Cn = Nothing
End Sub
推荐阅读
- javascript - Laravel ajax 发布,没有得到响应、错误或数据库插入
- javascript - Jest/Enzyme 测试没有给出预期的输出?
- oracle - Oracle 中的案例标签和 IF / Else 语句
- javascript - JavaScript 链式 Promises 意外的解决顺序
- rx-java - 如何在 RxJava 中用 Single 链接 Observable?
- sql - 在 SQL Server 中使用表变量
- mysql - SQL:从 2 列中过滤具有 2 个匹配条件的数据
- xamarin.ios - Xamarin 应用程序不会发布到苹果商店 - 多个 ERROR ITMS-90045 错误
- c - C中的字符串比较(游戏项目)
- c# - C#如何将richtextbox文本设置为默认值?