繁体   English   中英

如何将 excel 文件读入 MS Access 数据库并使用 VBA 对其运行数据验证?

[英]How to read in an excel file to MS Access database and run data validations against it using VBA?

我一直在阅读许多可能会做到这一点的方法,但似乎没有什么是确定的或完全适用于我的情况。

我想要做的是从我的桌面(在 MS Access VBA 中)读取 excel 文件,然后在读取它时我想对其运行一系列数据验证。 比如检查B16处的单元格是某个值还是某个字符串。 我需要能够在检查值和求和值时遍历行。 想想一个包含大量会计条款和数字的 excel 文件。 我将如何验证该数据?

我目前能够读取 excel 文件并将它们添加到使用以下方法访问数据库表:

DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel12Xml, "MyTbl", _
            Me.txtFileName, True, "Sheet1!"

我还阅读了有关使用记录集、使用 ActiveX 数据对象和使用 DoCmd.TransferDatabase acLink 的信息。

将数据从 Excel 导入 MS Access

将 Excel 文件读入 Access 数据库的最佳方法

您说“然后在阅读时”。 在执行 DoCmd.TransferSpreadsheet 时这是不可能的。

但是您可以在读入 Recordset 后使用 Recordset 遍历所有行(假定 MyTnl 是表的名称)。 COL1、COL2、COL3 是示例字段名称,但请使用 Sheet1 中的名称。 如果 Sheet1 没有列 header 名称,那么您的字段名称将采用 Field1、Field2 等形式:

    Dim rs As Recordset
    
    Set rs = CurrentDb.OpenRecordset("MyTbl")
    While Not rs.EOF
        ' you can perform your validations here by referencing values of your fields.
        Debug.Print rs.Fields("COL1"), rs.Fields("COL2"), rs.Fields("COL3")
        ' next row
        rs.MoveNext
    Wend
    Set rs = Nothing

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM