精华内容
下载资源
问答
  • Option ExplicitSub 数据库连接()'告诉电脑,我们要有ado,引用ado'创建连接对象'给对象取名字Dim con As ADODB.Connection '声明对象变量'创建对象变量并赋值Set con = New ADODB.Connection'建立数据库连接'dim ...
    
    

    Option Explicit
    Sub 数据库连接()
    '告诉电脑,我们要有ado,引用ado
    '创建连接对象
    '给对象取名字
    Dim con As ADODB.Connection '声明对象变量
    '创建对象变量并赋值
    Set con = New ADODB.Connection
    '建立数据库的连接
    'dim con as new adodb.connection
    'con.Open "provider=microsoft.ace.oledb.12.0;data source=" & ThisWorkbook.Path & "\学生管理.accdb"
    'MsgBox "连接成功"
    With con
    .Provider = "microsoft.ace.oledb.12.0"
    .ConnectionString = ThisWorkbook.Path & "\学生管理.accdb"
    .Open

    End With
    MsgBox "连接成功"
    End Sub
    Sub 插入记录()
    Dim con As ADODB.Connection '声明对象变量
    '创建对象变量并赋值
    Set con = New ADODB.Connection
    '建立数据库的连接
    With con
    .Provider = "microsoft.ace.oledb.12.0"
    .ConnectionString = ThisWorkbook.Path & "\学生管理.accdb"
    .Open

    End With
    MsgBox "连接成功"

    'insert into 表名(列1,列2)values(值1,值2,值3)
    Dim sql As String
    sql = "insert into 院系(院系编号,院系名,电话) values('A09','人文学院','9999')"
    con.Execute (sql)
    '释放空间变量
    con.Close '关闭连接
    Set con = Nothing '释放空间


    End Sub
    Sub 删除记录()
    Dim con As New ADODB.Connection
    con.Open "provider=microsoft.ace.oledb.12.0;data source=" & ThisWorkbook.Path & "\学生管理.accdb"
    'Dim sql As String
    'sql = "delete from 院系 where 院系编号=''"
    Dim sql As String
    'sql = "update 院系 set 电话='' where 系名=''"
    Dim str As String
    str = InputBox("输入性别", "提示")
    sql = "updata 学生 set 班级='2班' where 性别='" & str & " '"


    con.Execute (sql)


    End Sub
    Sub 简单查询()
    Dim con As New ADODB.Connection
    con.Open "provider=microsoft.ace.oledb.12.0;data source=" & ThisWorkbook.Path & "\学生管理.accdb"

    Dim sql As String
    sql = "select * from 学生"
    '获取记录集
    Dim rs As New ADODB.Recordset
    Set rs = con.Execute(sql)
    '获取字段名
    Dim i As Integer
    For i = 0 To rs.Fields.Count - 1
    Cells(1, i + 1) = rs.Fields(i).Name
    Next
    '将记录集rs的记录返回到工作表中

    Range("A2").CopyFromRecordset rs
    rs.Close: Set rs = Nothing
    con.Close: Set con = Nothing



    End Sub

    
    展开全文
  • VBA访问access数据库实例

    万次阅读 2016-08-18 16:39:51
    最近,同事要用一个excel文件导出每天邮件的信息,邮件基本信息都存在了access数据表中了,要实现这个功能有好几种方式,例如写一个qty文件,而我直接用了excel自带的VBA功能,写了一个宏,根据输入的日期直接调用,...

    最近,同事要用一个excel文件导出每天邮件的信息,邮件基本信息都存在了access数据表中了,要实现这个功能有好几种方式,例如写一个qty文件,而我直接用了excel自带的VBA功能,写了一个宏,根据输入的日期直接调用,想要哪一天的就导哪一天的!不能白瞎了我这个程序猿的称号啊,大笑大笑

    Sub DaoChuExl()
        
        Dim conn As New ADODB.Connection
        Dim rs As New ADODB.Recordset
        Dim rowxh As Integer, vhx As Integer, rowzs As Integer, connStr As String, sqlStr As String
        On Error Resume Next
     
        connStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & ThisWorkbook.Path & "\maildb.mdb;"
        'MsgBox connStr
        Dim ws As Worksheet
        
        Set ws = Sheets("Sheet1")
        conn.Open connStr
        
        vhx = 1
        
        sqlStr = "SELECT Fax_Name, Fax_ModiTime FROM Fax_ReciveInfo where Fax_Update='" & ws.Cells(1, 6).Value & "';"
        
        'MsgBox sqlStr
        rs.Open sqlStr, conn, adOpenStatic, adLockBatchOptimistic


        ws.Range("A2:K65535").ClearContents


        Do While Not rs.EOF
            With ws
                .Range("C2").CopyFromRecordset rs, 65535
            End With
            
            rs.MoveNext
        Loop
        
        
        rowzs = rs.RecordCount + 1
        For rowxh = 2 To rowzs
            ws.Cells(rowxh, 1) = vhx
            ws.Cells(rowxh, 4).NumberFormatLocal = "yyyy-m-d hh:mm:ss"
            vhx = vhx + 1
        Next
        
        
        rs.Close
        Set rs = Nothing
    End Sub

    最后的成果是:


    展开全文
  • Excel VBA Sql 操作Access数据库

    千次阅读 热门讨论 2021-03-13 10:28:13
    主要介绍Excel与Access数据库的互连,及sql语句中的增、删、改的语法构造
    展开全文
  • 可直接运行的ACCESS2003数据库范例,其中代码可看。数据库中有六条记录。特征与性能同前面上传的单纯源代码相同。
  • 数据库格式:   Sub test()  Dim conString$, sqlString$  Dim cnn, rst    Set cnn = CreateObject("ADODB.Connection")  Set rst = CreateObject("ADODB.Recordset...

    【例1】使用Connection的Execute的方法

    数据库格式:

     

    Sub test()

        Dim conString$, sqlString$

        Dim cnn, rst

       

        Set cnn = CreateObject("ADODB.Connection")

        Set rst = CreateObject("ADODB.Recordset")

        Dim i%, sex$, Address$, Name$, birthDay$

       

        conString = "provider=Microsoft.ace.OLEDB.12.0;Data Source=" & ThisWorkbook.Path & "\test.accdb;"

        cnn.Open conString

        sqlString = "update students set sSex=''"

        cnn.Execute sqlString

        MsgBox "更新成功"

        cnn.Close

    End Sub

     

    1. 使用RecordSet

    数据库字段如下:

    Sub exercise()

        Dim cnn, rst

        Set cnn = CreateObject("ADODB.connection")

        Set rst = CreateObject("ADODB.recordset")

        Dim sqlStr$, conStr$

        conStr$ = "provider=Microsoft.Ace.OLEDB.12.0;Data Source=" & ThisWorkbook.Path & "\test.mdb"

        sqlStr = "select * from students where 总分 <160"

        cnn.Open conStr$

        rst.Open sqlStr, cnn, adOpenDynamic, adLockOptimistic

        Do Until rst.EOF

            rst("总分") = 160

            rst.MoveNext

        Loop

        cnn.Close

    End Sub

    【例3】从excel获取批量写入ACCESS数据库

    数据库字段如下:

    Execel数据如下:

    Sub exercise()

        Dim cnn ', rst

        Set cnn = CreateObject("ADODB.connection")

        'Set rst = CreateObject("ADODB.recordset")

        Dim rst As New ADODB.Recordset

        Dim sqlStr$, conStr$, Count%

       

        conStr$ = "provider=Microsoft.Ace.OLEDB.12.0;Data Source=" & ThisWorkbook.Path & "\test.accdb"

        sqlStr = "insert into students(sName,sSex,sAddress,birthDay)  select 姓名, 性别, 地址, 出生日期 from [excel 8.0;database=" & ThisWorkbook.FullName & "].[sheet2$]"

        cnn.Open conStr$

       

        cnn.Execute sqlStr, Count

       

        MsgBox "更新了" & Count & "条结果"

        cnn.Close

    End Sub

    注:上面方式对于未打开的工作薄也可以获取数据.红色加粗部分标注的Excel 8.0随着不同的office版本需要做相应的改变。

    展开全文
  • 在EXCEL的VBA中使用DAO方式及ADO方式连接ACCESS数据库示例代码 '*******************************************************DAO(DAO 3.6 Object)方式******************************************* Public Function ...
  • VBA连接各种数据库

    千次阅读 2020-04-04 15:56:46
    1.连接各种数据库接口 Dim conn As New ADODB.Connection conn.Open “Provider = Microsoft.ACE.OLEDB.12.0;Data Source=D:\data\Edata.xlsx;extended properties=”“excel 12.0;HDR=YES”"" conn.Close ACCESS...
  • 这篇论坛文章着重介绍了Access数据库出现0x80004005问题的解决方法,更多内容请参考下文:  项目做了三个月了,终于也差不多完成了,昨天交去测试,结果出现了下面这样的问题:  [OleDbException (0x80004005)...
  • Access是微软Office组件的数据库软件,使用它可以进行简单的数据库软件的开发。但Access的图表功能和数据分析功能不如Excel强大,常用的做法可以将Access中的数据导入 Excel中再进行处理。如何使用VBA导入Access的...
  • 64位excel连接access数据库

    千次阅读 2019-05-14 17:56:00
    本帖已被收录到知识树中,索引项:ADO技术 先介绍下背景,老板比较会省钱,我也比较懒,所以有些工作不想手工做,老板也不给上软件...我所能做的也就是充分利用EXCEL以及VBA所带来的便利,当然过程中也没少在EXCEL ...
  • 数据库表如下: 【例1】使用Recordset插入数据 Excel表格内容如下: Sub test()  'Dim cnn As New ADODB.Connection  'Dim rst As New ADODB.Recordset  Dim conString$, sqlString$  Dim cnn, rst ...
  • Excel VBA读取 ACCESS 数据 连接

    万次阅读 2018-09-26 17:34:25
    Excel VBA读取 ACCESS 数据 连接 Sub access_test() Dim CONN As Object Dim RST As Object Dim SQL As String Sheets(&quot;Sheet1&quot;).Cells.Clear Set CONN = CreateObject(&quot;adodb....
  • VB 连接 带密码的Access mdb accdb 数据库以前在学习vb连接Access的时候,没加密的还好,带密码的就是出错,头疼了好久之后就没管它。今天又看到类似的问题,决定深究到底直到找到解决的办法。然后就解决了这个问题...
  • 这个系列开展一个新的篇章,重点关注Access数据库 主体框架:以Excel作为操作界面,Access作为数据库 今天讲讲:如何对数据库进行加密及操作该数据库 涉及知识:ADO Part 1:目标 对一个已有数据库进行...
  • VB 实现将Access数据库转换到Excel文件,VB转换成excel
  • 在网上看了很多教程,VBA怎么把图片通过ACCESS数据库的OLE对象传到数据库。结果全是其他语言写的。我今天用VBA 实现一下以下功能:代码前需引用 Microsoft Activex Data Objects x.x 库 1,把图片保存到ACCESS...
  • 如何用VBA备份和压缩ACCESS数据库

    千次阅读 2010-08-02 09:11:00
    在有些时候,我们会采用ExcelVBA+ACCESS数据库的方式来制作微型数据库系统。在多次操作数据库后,数据库文件会越变越大。在ACCESS里面有压缩数据库的命令,其实我们完全可以通过Excel VBA来压缩数据库。以下代码就是...
  • 可直接运行的ACCESS2003数据库范例,但其中代码不可看。数据库中有六条记录。特征与性能同前面上传的单纯源代码相同。
  • Access数据库模糊查询(List控件模糊查询),将Access的表的数据查询数据集加载到List控件,做到模糊关键字查询记录,可以进行多表模糊查询等等,强大使用简单,源码开放
  • 数据库格式: Sub test()  Dim conString$, sqlString$  Dim cnn, rst  Set cnn = CreateObject("ADODB.Connection")  Set rst = CreateObject("ADODB.Recordset") ...
  • 一、Microsoft Access数据库引擎——Jet、ACE 1、Microsoft.Jet.OLEDB.4.0提供程序 (1)、...
  • NetAccData控件系使用VB6开发,主要原理为Winsock控件在C/S模式下的实际运用,能很好解决Access数据库网络读写问题。特别适用于在不设置MDB数据库文件为“共享访问”条件下为其数据读取与写入提供数据传输支持,可使...
  • 64位Windows系统连接Access数据库,程序中可能需要修改Access数据库连接:  32位:String strUrl = "jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=c://demo.mdb"  64位:String strUrl = "jdbc:odbc:...
  • 一、Microsoft Access数据库引擎——Jet、ACE 1、Microsoft.Jet.OLEDB.4.0提供程序 适用于Microsoft Access 2007以前的版本,如Microsoft Access 2000、Microsoft Access 2003等。 2、Microsoft.ACE.OLEDB.12.0...
  • VBA把EXCEL表导入ACCESS数据库

    万次阅读 2013-01-07 23:29:53
    首先在指定的access数据库的建立一张表,表格的字段和需要导入EXCEL表的字段保持一致。  方法一:在eccel VBA编辑器... '定义ADODB 连接Access数据库  Dim Cnn As New ADODB.Connection  Dim Rs As New ADODB
  • VBA中实现两个ACCESS数据库之间的数据导出与导入 分类: ACCESS 1.导出数据。 DoCmd.TransferDatabase acExport, "Microsoft Access", CurrentProject.Path & "\Destination.mdb", acTable, "SourceTableName", ...
  • 这是以前的程序运行vb连接本地Access时的代码。方式比较老,10年前的小工具。 现在要在win10 64位系统上运行,总是到驱动这里就报异常。因本人第一次接触这些 就从网上查资料 各种各样的解决办法就没能解决。比如...
  • Excel中调用Access数据库

    千次阅读 2019-07-12 09:57:43
    data source=" & "E:\客户信息管理\CustomData.MDB;Jet OLEDB:Database Password=123"  Rs1.Open "开户清单", Conn1.ConnectionString, 3, 1  Rs1.MoveFirst  Rs1.Find "名字='ergt'"  MsgBox Rs1....
  • access数据库连接 这是一些我用来连接三种数据库的vba代码。 “ somefunctioncall”函数利用“ opendb”函数连接到数据库... 您将必须在后一个函数中输入参数,并取消注释“首选连接字符串” 您可能对此代码...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 696
精华内容 278
热门标签
关键字:

vba连接access数据库mdb