繁体   English   中英

访问VBA动态Excel导入

[英]Access VBA Dynamic Excel Import

我正在尝试将Excel电子表格动态导入Access。 问题是,我需要导入特定的工作表(这部分已整理),但是我在导入名称逐月更改的工作表时遇到了问题。

代码示例:

DoCmd.TransferSpreadsheet acLink, acSpreadsheetTypeExcel12Xml, "MonthSales", FileName, 1, "Sales_Month!"

"Sales_Month!" 是我需要它动态的地方。 如果工作表始终具有相同的名称,则可以直接将其导入。 所以我的问题是,我可以使用某种通配符导入它吗?

例如: "Sales_*!"

注意:此Excel工作簿有几个工作表。

这应该是一个简单的解决方案,使用Left运算符在for循环中查找Excel工作表名称:

Dim xls As New Excel.Application, sht As String, Wkb As Workbook, Wksh As Worksheet
Set Wkb = xls.Workbooks.Open(FileName)

For Each Wksh In Wkb.Worksheets
  if left(Wksh.Name, 6) = "Sales_" then
      DoCmd.TransferSpreadsheet acLink, acSpreadsheetTypeExcel12Xml, "MonthSales", FileName, 1, Wksh.Name
      Exit For
  end if
Next Wksh

Wkb.Close
xls.Quit
Set Wkb = Nothing
Set xls = Nothing
Exit Sub

暂无
暂无

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

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