是否可以search,然后使用Access VBA从Excel文件读取特定值?

我不得不从excel文件中读取值,但它是一个Excel逗号分隔的文件。 这一次,我有一个graphics和两个表的Excel文件。 我只想读取特定表格的一列中的值。 这里是一个excel文件的布局的图片。 我想在底部标有“红色”箭头标记的“金额”栏中阅读。 我不想把它下面的所有金额的总和。

在这里输入图像说明

当我读取从Excel逗号分隔的文件中的所有值我使用此代码。 初始化和不必要的逻辑已被删除,只显示这个问题的相关代码。

Set objconnection = CreateObject("ADODB.connection") Set objRecordset = CreateObject("ADODB.recordset") objconnection.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strpathtotextfile & ";Extended Properties=""Text;HDR=YES;FMT=Delimited""" objRecordset.Open "SELECT * FROM [" & ThisFileName & "]", objconnection, adOpenStatic, adLockOptimistic, adCmdText 'select all text lines from the file Do While Not objRecordset.EOF 'read lines until end of file 'Clear out all the local objects so prior values aren't left there' SampleName = "" DateTimeAcquired = "" Analyte = "" Concentration = "" 'reads in each value according to column name and save to variable' SampleName = objRecordset.Fields("Sample Name").Value DateTimeAcquired = objRecordset.Fields("Date and Time Acquired").Value Analyte = objRecordset.Fields("Element Full Name").Value Concentration = objRecordset.Fields("Concentration").Value 'other logic' objRecordset.MoveNext Loop 

有什么类似的,我可以为我目前正试图导入的Excel文件? 有没有办法只导入一列?

更新:Excel文件总是在相同的布局,我总是从插槽29G-34G检索信息。

您需要调整文件path和表名称,但是应该这样工作:

 Sub Tester() Dim cn As New ADODB.Connection Dim rs As ADODB.Recordset cn.Open "Provider=Microsoft.ACE.OLEDB.12.0;" & _ "Data Source=C:\Users\thisuser\Desktop\test.xlsx;" & _ "Extended Properties=""Excel 12.0 Xml;HDR=NO""" Set rs = cn.Execute("select * from [Sheet1$G29:G34]") Do While Not rs.EOF Debug.Print rs(0).Value rs.MoveNext Loop End Sub