Excel VBA利用ADO从SQL Server查询数据的详细示例
在Excel VBA中,你可以使用ADO(ActiveX Data Objects)对象来从SQL Server查询数据。下面是一个简单的示例: ```vba Sub QueryDataFromSqlServer() ' 定义连接字符串 Dim connStr As String connStr = "Provider=SQLOLEDB;Data Source=服务器地址;Initial Catalog=数据库名称;User ID=用户名;Password=密码;" ' 创建连接对象 Dim conn As Object Set conn = CreateObject("ADODB") ' 打开连接 conn.Open connStr ' 创建记录集对象 Dim rs As Object Set rs = CreateObject("ADODB.Recordset") ' 执行SQL查询 Dim sql As String sql = "SELECT * FROM 表名" rs.Open sql, conn ' 将数据写入Excel工作表 Dim ws As Worksheet Set ws = ThisWorkbook.Worksheets("Sheet1") ' 将字段名写入第一行 For i = 1 To rs.Fields.Count .Cells(1, i).Value = rs.Fields(i - 1).Name Next i ' 将数据写入从第二行开始的其他行 ws.Range("A2").CopyFromRecordset rs ' 关闭记录集和连接 rs.Close conn.Close ' 释放对象 Set rs = Nothing Set conn = Nothing End Sub ``` 你需要将上述示例中的"服务器地址"、数据库名称"、"用户名"和"密码"替换为你自己的实际信息,并确保在Excel VBA中已添加对ADO库的引用。 ######[AI写代码神器 | 984点数解答 | 2023-12-14 14:29:07]
- Python 利用 win32com 库:将 Excel 转换为 A4 横向 PDF 并单独打印首列(字节豆包 | 507点数解答 | 2025-03-10 15:48:12)315
- Java SQL语法错误:“select count(*)”语句出错,教你排查MariaDB SQL语法问题!( | 350点数解答 | 2024-04-25 08:26:19)389
- Java实现链表反转:迭代与递归双解法详解及开发实战指南(DeepSeek | 1409点数解答 | 2026-03-15 15:09:29)35
- 数据库连接报错剖析:SSL 配置不匹配及解决攻略 (字节豆包 | 205点数解答 | 2024-09-04 19:14:42)356
- SQL Server 安全连接报错:服务器 TLS1.0 不被客户端 [TLS13, TLS12] 偏好接受 (字节豆包 | 149点数解答 | 2024-09-05 09:01:11)317
- Java代码实现从JSON数据中提取ID,涉及“数据”与“项目 - 知识库”结构(字节豆包 | 603点数解答 | 2025-04-15 22:48:51)245
- C++ 实现:计算一排鹅与最高、最矮鹅的身高差及代码详解(字节豆包 | 549点数解答 | 2025-11-16 20:19:06)90
- 编程揭秘:计算 𝑛! 在 𝑃 进制下末尾零个数的方法与代码实现(DeepSeek | 549点数解答 | 2026-01-11 17:49:54)51
- 缜密逻辑,全新无名杀“风餐”技能代码精心打造与深度解析 (字节豆包 | 469点数解答 | 2025-04-05 11:37:06)249
- 使用Excel VBA轻松从SQL Server查询数据:附详细示例代码( | 1022点数解答 | 2023-12-14 14:23:41)242
- Excel VBA:轻松选择表1中A栏非空白单元格的方法(阿里通义 | 321点数解答 | 2024-01-12 16:40:59)265
- Excel VBA:精准选择表1中A列首个至最后一个非空白单元格的代码揭秘(阿里通义 | 193点数解答 | 2024-01-12 16:41:55)326