Access VBAを使用してExcelファイルから特定の値で読み取ることを検索することは可能ですか?

StackOverflow https://stackoverflow.com//questions/25044194

質問

私は以前にExcelファイルから値を読み込まなければなりませんでしたが、Excelコンマ区切りファイルでした。今回は、グラフと2つのテーブルを持つExcelファイルがあります。特定のテーブルの1列の値で読みたいだけです。これは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ファイルに対してできることが似たものはありますか?その1つの列のみをインポートする方法はありますか?

update:Excelファイルは常にスロット29g-34gからの情報を取得しています。

役に立ちましたか?

解決

ファイルパスとシート名を調整する必要がありますが、このようなものは機能する必要があります。

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
.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top