zoukankan      html  css  js  c++  java
  • Excel的VBA连接数据库方法

    Sub GetData()     
         Dim strConn As String, strSQL As String
         Dim conn As ADODB.Connection
         Dim ds As ADODB.Recordset
         Dim col As Integer
         
        '清空电子表格的所有数据      
        Cells.Clear
         
        '连接数据库的字符串      
        strConn = "Provider=SQLOLEDB.1;Persist Security Info=True;User ID=name;Password=pwd;Initial Catalog=dataname;Data Source=servername"
        '查询语句
         strSQL = "select * from table1"
         Set conn = New ADODB.Connection
         Set ds = New ADODB.Recordset
        '打开数据库连接
         conn.Open strConn
         
         With ds
       '根据查询语句获得数据
             .Open strSQL, conn
             
             '自动控制加入所有列标题
             For col = 0 To ds.Fields.Count - 1
        '请注意Offset(0, col)中的参数一定要正确噢
                 Range("A1").Offset(0, col).Value = ds.Fields(col).Name
             Next
             
            '加入所有行数据
             Range("a1").Offset(1, 0).CopyFromRecordset ds
         End With
         
        '以下是关闭数据库连接和清空资源
         Set ds = Nothing
         conn.Close
         Set conn = Nothing
    End Sub

    做完上面的模块后,要调用它就要加入一个事件:
    '我这个是加入一个工作薄打开时就运行GetData方法,也就是自动加载数据
    Private Sub Workbook_Open()
         Application.Run "GetData"
    End Sub

    这个例子再适当的改一下,就可以打开所有数据库了。

  • 相关阅读:
    git上刚下载的项目就显示有改动
    Windows Server 2012 R2安装Oracle 11g问题
    maven项目更换本地仓库
    dom4j创建和解析xml文档
    java倒计时三种简单实现方式
    JS倒计时两种种实现方式
    java加载properties文件的六中基本方式实现
    MYSQL 高级语法
    MYSQL 基础语法
    Sql 代码规范说明
  • 原文地址:https://www.cnblogs.com/2814/p/1749017.html
Copyright © 2011-2022 走看看