微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用 VBA 将数据导出到 Access循环问题

如何解决使用 VBA 将数据导出到 Access循环问题

我创建了 2 个连接到开放 Access 数据库 (MasterFile_January2021.accdb) 并将数据导出到该数据库的子程序。

目前,它似乎陷入了从月度报告工具导出数据的无限循环 - 与 250k 预期行相比,在崩溃之前导出了 600k+ 行(并且当原始文件中没有时我可以找到重复项).

Sub ExportData()

    Dim strPathFile As String,strFile As String,strPath As String,fileName As String
    Dim strTable As String
    Dim blnHasFieldNames As Boolean
    
    
    blnHasFieldNames = True
    
    strPath = "Z:\Danny Tool Test Folder\"
    
    strTable = "tblDatabase"
    
    strFile = Dir(strPath & "Monthly Reporting Tool.xlsm")
    do while Len(strFile) > 0
      strPathFile = strPath & strFile
      DoCmd.TransferSpreadsheet acImport,acSpreadsheetTypeExcel9,_
            strTable,strPathFile,blnHasFieldNames
    
    Loop
    
End Sub

解决方法

代码在无限循环中调用 test-1,2,3,4。循环永远不会终止,因为 TransferSpreadsheet 永远不会改变,所以 strFile 始终为真。

但是您想一次性导入 Excel 数据,所以不要循环调用 Len(strFile) > 0

TransferSpreadsheet

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