设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 859|回复: 3
打印 上一主题 下一主题

[其它] 求助:怎样用VBA在access中获得数据库中表的结构?

[复制链接]
跳转到指定楼层
1#
发表于 2005-6-1 18:38:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我现在要用ACCESS做一个数据校对程序,从已知格式的EXCEL中读取数据,之后在数据库中对数据进行校验,看所填数据是否在数据库中预先定义的值列表里面。我用docmd读取文件到access后,会生成多个表,然后我要从每一个表中按照列明分别读取,根据列名判断使用哪个值列表进行校验,并把校验结果写到表格每行的末尾字段中。但是使用DAO的时候,我没有找到可以把表结构列出来的方法。不知道这种思路对不对?事情挺急得,哪位牛人帮帮忙啊?小弟这里先谢了。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2005-6-1 19:36:00 | 只看该作者
我不会用dao,但是我会用ADO,请看下面dim rs as new adodb.recordsetrs.open "表",CurrentProject.Connection,3,3如果你想知道字段名 可以用 rs.fields(0).name 这样可以得到第一个字段名但是你想知道的更详细,请看下面Field 对象的 Type 属性用于查看记录集中各个字段的数据类型 Type 的返回值是一

个 DataTypeEnum 数据类型常量

下面的例程用于查看所获得的记录集中所有字段所使用的数据类型

Sub getFieldType()

Dim Con1 As ADODB.Connection

Dim Rec As ADODB.Recordset

Dim Fie As ADODB.Field

Dim strCon As String

'建立数据库连接 打开数据表

    strCon = "rovider=Microsoft.Jet.OLEDB.4.0;" & _

         "Data Source=C:\My documents\邮局期刊订阅投递系统.mdb;"

Set Con1 = New ADODB.Connection

    Con1.Open     

    Rec.ActiveConnection = Con1

    Rec.Open "SELECT * FROM 发行员 ", , , , adCmdText



'输出发行员表中的所有字段的名称和数据类型

    For Each Fie In Rec.Fields

Debug.Print "字段名称 "; Fie.Name; vbCr; "数据类型 "; Fie.Type

Next Fie

End Sub
3#
 楼主| 发表于 2005-6-2 17:41:00 | 只看该作者
谢谢海狸先生,我好好研究下这个东东。我还有些担心,如果使用ADO会不会在一些电脑上出现无法使用的情况?我写这个东东主要是想发给别人,在数据采集的时候用来校对用。
4#
发表于 2005-6-2 17:44:00 | 只看该作者
试试不就知道了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-12-2 07:02 , Processed in 0.102259 second(s), 28 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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