Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vue.js/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
获取access vba中excel文件行的结尾_Excel_Vba_Ms Access_Dao - Fatal编程技术网

获取access vba中excel文件行的结尾

获取access vba中excel文件行的结尾,excel,vba,ms-access,dao,Excel,Vba,Ms Access,Dao,我正在使用vba(dao)以以下方式将excel文件导入access: Set db = CurrentDb query = "SELECT DISTINCT * INTO MyTable" _ & " FROM [Excel 12.0 Xml;HDR=Yes;Database=" & filePath & "].[Sheet1$];" db.Execute (query) [Sheet1$]是此处的关键字。我的excel表格标题以第3行开始

我正在使用vba(dao)以以下方式将excel文件导入access:

Set db = CurrentDb    
query = "SELECT DISTINCT * INTO MyTable" _
          & " FROM [Excel 12.0 Xml;HDR=Yes;Database=" & filePath & "].[Sheet1$];"
db.Execute (query)
[Sheet1$]
是此处的关键字。我的excel表格标题以第3行开始。我想做一些类似于
[Sheet1$A3:Lastline]
的事情

有没有一个简单的方法来获取最后一行?或者我真的需要创建VBA Excel对象,打开文件并计数吗

或者,我可以更改页眉开始位置吗?例如,是否改为使用自定义导入方案


提前感谢。

考虑使用记录集进行计数查询,并在生成表查询中连接结果:

Dim db As DAO.Database
Dim rst As DAO.Recordset
Dim query As String

Set db = CurrentDb 
Set rst = db.OpenRecordset("SELECT Count(*) AS RowCount" _
   & " FROM [Excel 12.0 Xml;HDR=No;Database=" & filePath & "].[Sheet1$]")

query = "SELECT DISTINCT * INTO MyTable" _ 
   & " FROM [Excel 12.0 Xml;HDR=Yes;" _
   & " Database=" & filePath & "].[Sheet1$A3:A" & rst!RowCount & "];" 

db.Execute (query)

rst.Close
Set rst= Nothing
Set db = Nothing

考虑使用记录集进行计数查询,并在生成表查询中连接结果:

Dim db As DAO.Database
Dim rst As DAO.Recordset
Dim query As String

Set db = CurrentDb 
Set rst = db.OpenRecordset("SELECT Count(*) AS RowCount" _
   & " FROM [Excel 12.0 Xml;HDR=No;Database=" & filePath & "].[Sheet1$]")

query = "SELECT DISTINCT * INTO MyTable" _ 
   & " FROM [Excel 12.0 Xml;HDR=Yes;" _
   & " Database=" & filePath & "].[Sheet1$A3:A" & rst!RowCount & "];" 

db.Execute (query)

rst.Close
Set rst= Nothing
Set db = Nothing

为什么不只是硬代码
[Sheet1$A3:A1048576]
?为什么不只是硬代码
[Sheet1$A3:A1048576]