美文网首页
excel连接数据库(access和sql sever)

excel连接数据库(access和sql sever)

作者: 茶苯海 | 来源:发表于2016-10-10 14:58 被阅读596次

<em>首先,进入VBE(快捷键alt+F11), 工具-引用,将microsoft ActiveX Data Object 2.8 Library(或6.0)勾选。</em>

  • excel连接access数据库
    1.没有密码保护的access数据库
    2.有密码保护的access数据库
    注意:以独占方式打开数据库文件,文件-信息-用密码进行加密
    这里以有密码保护的为例进行说明:
    <code>
    '--------------------------------excel连接access数据库-------------------
    Sub SQL_Excel_access()
    On Error Resume Next '如果出现错误,忽略,然后执行下一行代码。
    Application.ScreenUpdating = False '关闭屏幕刷新,成对出现,提高速度
    Application.DisplayAlerts = False '关闭提示,,成对出现,避免出现提示框
    '------------------------------------- 参数声明部分 ------------------- ------
    Dim cnn, SQL$ '定义数据库连接和SQL语句
    Set cnn = CreateObject("adodb.connection") '创建数据库连接
    Set rs = CreateObject("adodb.recordset") '创建一个数据集保存数据
    '------------------------------------ 设置数据库连接 ------------------- --
    cnn.Open "Provider=Microsoft.ACE.OLEDB.12.0;
    Data Source=存放数据库位置;Jet OLEDB:Database password=密码;"
    '--------------------------------------- 设置SQL语句 ------------------- ---
    SQL = "select * from 新老访客"
    '--------------------------------------- SQL结果处理 ------------------- ---
    Set rs = cnn.Execute(SQL) '将SQL语句获得的数据传递给数据集
    Sheets("结果access").Cells.ClearContents '清理保存数据的区域
    Sheets("结果access").Range("a2").CopyFromRecordset rs
    '将数据集粘贴到Excel中,左上角为A2,无列名。
    'Sheets("结果access").Range("b2").CopyFromRecordset cnn.Execute(SQL)
    '可以不声明Rs,直接使用
    cnn.Close '关闭数据库连接
    Set cnn = Nothing '将CNN从内存中删除。
    '--------------------------------------- ------------------------ -----------------
    Application.ScreenUpdating = True '对应前面关闭屏幕刷新
    Application.DisplayAlerts = True '对应前面关闭提示
    End Sub
    </code>
  • excel连接sql sever数据库
    关键语句换成:
    <code>cnn.open"provider=SQLOLEDB;Data source=服务器名称;
    initial catlog=数据库名称; UID=用户名;psd=密码"</code>
    其他类似。
    sql语句部分如果不对 检查数据表是否写完整了。

服务器名称可以写IP地址或者localhost或者本地电脑名称()
ip地址查询:打开网络和共享中心-更改适配器设置-本地连接-详细信息-IPv4地址

以上是以本机为服务器的情况下

相关文章

网友评论

      本文标题:excel连接数据库(access和sql sever)

      本文链接:https://www.haomeiwen.com/subject/ejnmyttx.html