吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1090|回复: 1
收起左侧

[求助] TAT关于修改了excel数据后vba同步到access中

[复制链接]
cherrycdh 发表于 2021-8-23 16:22
不好意思,小白又来求指教了
没学过数据库的小白,在操作access中问题好多,
这次需要做一个文件,要求是这样的,当点击了7列或者17列的单元格(激活了)并且是修改了其中一列的数据后,同步到相应的access中
思路有了,但是好像代码不对,如果有大佬有这方面的指导文件,希望给一个,如果会的,也希望指导一下,谢谢了

[Visual Basic] 纯文本查看 复制代码
Private Sub Worksheet_Change(ByVal Target As Range) '这里是当点击该单元格(定位)

    Dim SQL As String
    Dim sqltext(5)
    
    If Target.Column = 7 Or Target.Column = 14 Then  '其实我这里更想做的是,只是激活不更改数据的时候后面不操作,只有当更改7列或者9列的时候动

    '定义ADODB 连接Access数据库
    Dim cnn As New ADODB.Connection
    Dim Rs As New ADODB.Recordset
    Dim strCon As String
    Dim strFileName As String '数据库文件名
    strFileName = "E:\临时文件\培训管理.mdb"
    '连接字符串,我这里是Access2010,所提供者参数为:Provider=Microsoft.ACE.OLEDB.12.0;
    '如果此参数不能使用,根据自己的电脑修改这个字符串
    '至于连接至的数据库名,根据自己的电脑修改,或用一个对话框或其他方式将此值传递进程序
    strCon = "provider=Microsoft.jet.OLEDB.4.0;" _
    & "Data Source=" & strFileName & ";"
    cnn.Open strCon
    Rs.ActiveConnection = cnn
    Rs.LockType = adLockOptimistic
    Rs.Open "培训记录" '假设表为Employee
    
    sqltext(0) = Cells(Target.Row, 1): sqltext(1) = Cells(Target.Row, 2): sqltext(2) = Cells(Target.Row, 3): sqltext(3) = Cells(Target.Row, 4): sqltext(4) = Cells(Target.Row, 7): sqltext(5) = Cells(Target.Row, 14)
    
  
    SQL = "SELECT 培训记录.日期, 培训记录.培训时间, 培训记录.培训主题, 培训记录.姓名    FROM 培训记录  WHERE (((培训记录.日期) = sqltext(0)) And ((培训记录.培训时间) = sqltext(1)) And ((培训记录.培训主题) = sqltext(2)) And ((培训记录.姓名) = sqltext(3)))"
    
    Rs.AddNew               '这里我不知道哪里错了,:'(weeqw,因为运行之后,变成了在数据库最后增加了一条数据,而不是在原有的基础上修改
    Rs!参加与否 = sqltext(4)
    Rs!培训考评 = sqltext(5)
    Rs.Update
    MsgBox "数据已更新"
    End If
    
    Rs.Close
    
    cnn.Close
    Set Rs = Nothing
    Set cnn = Nothing
    Set sht = Nothing
End Sub

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| cherrycdh 发表于 2021-8-24 10:53
没有大神回答么
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 23:48

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表