vba连接数据库「详细讲解:vba中主要提供了3种数据库访问接口」

Hi,大家好,美好的一天从这里开始,今天主要讲解vba连接数据库,vba中主要提供了3种数据库访问接口,以及关于数据库,工作,字段,代码,内容等等一系列的相关事项,其他的废话在这里我也不说了,我们直接来进入正题吧!

今日讲解的内容为如何建立一个数据库的连接,并实例讲解利用连接从数据库中查到有用的记录,填在表格中的方法。

我们要先打开一个工作表,它的A列数值为要在数据库中查询的字段,并把在数据库中查到此字段的其他内容填充到这个工作表中的B:G列的位置。好我们先看下面的代码,在代码的过程中均有详细的讲解。有的容易些,有的难懂些,不过都没关系,有兴趣的读者可以仔细地琢磨,都是一步一步看过来的。我在学VBA的时候,资料还很少很少,有的需要自己的摸索。待这个平台的资料多些了,也希望能有位大侠给出本书,利于大家的学习。

1 Dim myData As String, myTable As String

2 Dim wb As Workbook

3 Dim ws As Worksheet

4 Dim i As Long, j As Long

5

6

7 Dim cnn As ADODB.Connection

8 Dim rs As ADODB.Recordset

9 Set wb = ThisWorkbook \’指定工作簿

10 Set ws = wb.Sheets(“A-RR”) \’指定工作表名称

11 Dim PATH

12 PATH = ActiveWorkbook.Path \’& “\\” \’路径名称

13 ChDir PATH

14 myData = “D:\\RR” & “\\myData.mdb” \’指定新数据库名称(完整路径)

15 myTable = “RR资料” \’指定数据库的数据表名称

\’检查是否已经存在同名数据库文件

16 If Dir(myData) = “” Then

17 MsgBox (myData & “不存在!”)

\’不存在的情况下,释放变量,退出

18 Set wb = Nothing

19 Set ws = Nothing

20 Set rs = Nothing

21

22

23 Set cnn = Nothing

24 End

25 Else

\’如果已经存在了数据库文件,就检查是否存在数据表

\’建立与数据库的连接

26 Set cnn = New ADODB.Connection

27 With cnn

28 .Provider = “microsoft.jet.oledb.4.0”

29 .Open myData

30 End With

\’开始查询是否存在该数据表

31 Set rs = cnn.OpenSchema(adSchemaTables)

32 Do Until rs.EOF

33 If LCase(rs!table_name) = LCase(myTable) Then GoTo hhh \’如果查到则退出循环

\’继续查询

34 rs.MoveNext

35 Loop

\’释放变量,退出(这是没有查到的情况)

36 Set wb = Nothing

37 Set ws = Nothing

38 Set rs = Nothing

39

40

41 Set cnn = Nothing

42 MsgBox (“不存在此工作表!”)

43 End

hhh:

44 End If

\’到此是找到了某个记录,并打开了数据库

45 Sheets(“A-RR”).Select

46 Range(“B2:G3000”).Clear \’做填充数据的准备

47 Set rs = New ADODB.Recordset

48 t = 2

49 Do While Cells(t, 1) “”

50 Cells(t, 1).Select

51 Sql = “select * from ” & myTable _

52 & ” where RR = ” & ” \'” & ws.Cells(t, 1).Value & “\'”

53 rs.Open Sql, cnn, adOpenKeyset, adLockOptimistic

54 If rs.RecordCount = 0 Then

\’如果数据库中没有工作表的某行数据,就

55 ws.Cells(t, 2).Value = “No Find”

56 ws.Cells(t, 3).Value = “No Find”

57 Else

\’如果数据库中有工作表的某行数据,就将数据进行更新

58 ws.Cells(t, 2).Value = rs.Fields(1)

59 ws.Cells(t, 3).Value = rs.Fields(2)

60 End If

61 rs.Close \’关闭,此处的RS必须要关闭,必须的。

62 t = t + 1

63 Loop

64 MsgBox “完成!”, vbInformation + vbOKOnly

\’关闭数据库及查询数据集

65 cnn.Close

\’释放变量

66 Set wb = Nothing

67 Set ws = Nothing

68 Set rs = Nothing

69 Set myCmd = Nothing

70 Set myCat = Nothing

71 Set cnn = Nothing

看看下面的截图:

vba连接数据库,vba中主要提供了3种数据库访问接口

vba连接数据库,vba中主要提供了3种数据库访问接口

到此这项任务就完成了,利用VBA控制EXCEL是本平台的较高水平的内容,但程序的思想、思路和写函数是一致的,都要按规定的线路来进行。如果检测到没有按照自己的设想来运行程序,那是绝对不可以的。关注本平台,会经常有类似大段的代码共大家参考。当然,上述的代码也是解决这类问题的一个通用的代码,读者可以使用,没问题。

分享成果,随喜正能量

上面就是文章的所有内容,希望你看到这篇文章以后能举一反三,如果觉得这篇vba连接数据库「详细讲解:vba中主要提供了3种数据库访问接口」不错的话,可以转发给你朋友哦!

本文发布者:万能达人,不代表寂寞网立场,转载请注明出处:https://www.jimowang.com/p/29882.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 jimowangmail@126.com 举报,一经查实,本站将立刻删除。

(0)
上一篇 2023年1月26日 09:19
下一篇 2023年1月26日 09:21

相关推荐

  • 2022年电脑最新版本win10怎么样「最新win10最新版本号是多少」

    首先,何轩洋感谢你能坚持经常过来关注我!下面我就来说说2022年电脑最新版本win10怎么样(win10最新版本号是多少),以及系统,电脑,桌面的相关内容干货,先说明一下,老司机直接飘过吧,主要是讲解给新手朋友们的哈! win10系统有什么优点,对于这个问题,相信还有很多朋友不太明白.Win10系统是微软公司最新的操作系统,不少朋友已经使用过了,但还有很多人…

    自媒体 2022年10月29日
  • 第22届中国长春净月潭瓦萨国际滑雪节精彩启幕 – 视频

    亲爱的朋友们,我是新闻发布员朱乐怡,与您分享最新最全的资讯。近日,第22届中国长春净月潭瓦萨国际滑雪节精彩启幕成为网络上最受关注的话题之一,引起了不少人的兴趣。现在就请跟随我,一同探寻这个事件的真相吧! 原标题:第22届中国长春净月潭瓦萨国际滑雪节精彩启幕 1月4日,第22届中国长春净月潭瓦萨国际滑雪节在长春净月潭国家国家森林公园盛装启幕。皑皑白雪中,来自世…

  • 如何哄女孩子不生气:最新教你5招让她更加离不开你

    哈喽,小伙伴们大家好,今天何政原说的这篇文章如何哄女孩子不生气,教你5招让她更加离不开你,以及女生,生气,时候等等相关的各种干货,整理总结之后,我就想着写这篇文章和大家分享一下,因为毕竟新手朋友还是很多的! 惹女生生气了怎么办?学几招帮你哄回来 惹女生生气了怎么办? 好办啊,去哄她开心啊,具体该怎么做呢? 小蜜就教大家几招帮你把女生哄回来。 01 惹女生生气…

    2022年12月16日 自媒体
  • 业主起诉物业强制刷脸进门获胜:侵犯住户个人信息

    小伙伴们你们好,我是本站新闻记者周世演,近来,业主起诉物业强制刷脸进门获胜:侵犯住户个人信息引起了人们的热议和讨论,成为了网络上备受关注的话题之一。让我们看下到底发生了什么事情! 随着智能技术的发展,越来越多设备用上了人脸识别,比如打卡机、智能门锁,甚至是小区的智能门禁。 需要注意的是,打卡机、智能门锁这种都属于自己小范围内,但小区的人脸识别门禁却自从问世以…

    2023年3月29日
  • 奢侈品牌排行榜前十名「详细讲解:十大奢侈品牌排行榜包包有哪些」

    小伙伴们大家好,这次韩滟镡早带大家来分析下关于奢侈品牌排行榜前十名,十大奢侈品牌排行榜包包有哪些,还有关于品牌,产品,服装,全球,香水这些的相关干货文章,思路决定出路,确实,这个真的很重要,希望能帮到你! 现在奢侈品牌有很多,那么全球奢侈品牌排行榜前十名都有哪些呢?今天韩滟镡整理了世界十大顶级奢侈品牌排名,朋友们可以参考一下。 1、Hermes爱马仕 爱马仕…

    2023年1月13日
  • 耗子尾汁到底是什么东西「推荐耗子尾汁的解释」

    Hi,大家好,美好的一天从这里开始,今天主要讲解耗子尾汁到底是什么东西,耗子尾汁的解释,还有干货耗子,东西,尾巴等等各种精品,先说明一下,老司机直接飘过吧,主要是讲解给新手朋友们的哈! 前段时间武术大师马保国的身影活跃在世界上的任何一个地方,一句“年轻人不讲武德”成为了当下脍炙人口的名言。但是你以为我今天要跟大家讲武德了吗?今天给大家聊聊“耗子尾汁”。 耗子…

    2022年10月22日 自媒体