ExcelTip.Net留存知识帖 ---【注:附件之前被网盘供应商清空后,现已修复-现已修复-现已修复为本地下载!】
现在位置:首页 > E问E答 > Excel VBA > 如何判断ACCESS的student是否存在class表?

如何判断ACCESS的student是否存在class表?

作者:绿色风 分类: 时间:2022-08-17 浏览:90
楼主
wise
Q:如何判断ACCESS的student是否存在class表?
主要涉及:Excel+Access+ADO+VBA方面的应用。
A:ALT+F11→插入模块→输入以下代码:
  1. Public Sub IistTable() '引用Microsoft ActiveX Data Objects 2.5 Library 或更高
  2.     Dim mydata As String
  3.     Dim mytable As String
  4.     Dim cnn As ADODB.Connection
  5.     Dim rs As ADODB.Recordset
  6.     mydata = ThisWorkbook.Path & "\student.accdb"
  7.     '当前路径下的Access中的student文件
  8.     mytable = "class"
  9.     Set cnn = New ADODB.Connection
  10.     With cnn
  11.         .Provider = "Microsoft.ACE.OLEDB.12.0"
  12.         '注意该处连接,使用于2007以上的版本
  13.         .Open mydata
  14.     End With
  15.     Set rs = cnn.OpenSchema(adSchemaTables)
  16.     '利用openschema判断指定数据库中是否存在指定的表
  17.     Do Until rs.EOF
  18.     '检查代码是否执行到文件尾部
  19.         If LCase(rs!table_name) = LCase(mytable) Then
  20.         '注意rs!table_name的写法及LCase的用法
  21.             MsgBox "数据表 < " & mytable & ">  存在!"
  22.             GoTo 100
  23.         End If
  24.         rs.MoveNext
  25.     Loop
  26.     MsgBox "数据表 <" & mytable & "> 不存在!"
  27. 100:
  28.     rs.Close
  29.     cnn.Close
  30.     Set rs = Nothing
  31.     '清空rs
  32.     Set cnn = Nothing
  33.     '清空cnn
  34. End Sub

VBA+ADO+Access.rar
2楼
xmyjk
adSchemaTables是个好方法,学习了。

免责声明

有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素, 经与ExcelTip.Net站长Apolloh商议并征得其同意, 现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示, 供有需要的人士查询使用,也慰缅曾经的论坛时代。 所示各个帖子的原作者如对版权有异议, 可与本人沟通提出,或于本站点留言,我们会尽快处理。 在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一

评论列表
sitemap