tagCANDY CGI VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板
VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板
[ツリー表示へ]  [ワード検索]  [Home]

タイトル Re: エクセルデータが取込めない
投稿日: 2014/04/02(Wed) 10:37
投稿者YK
こんにちは。

コードからではなにをしたいのかわからないの
りあえずエクセルのデータを ADODB の Recordset に格納します。
Excel2003以前 と Excel2007以降ではProviderが違います。
変数の内容また未定義の変数がありますが、確認して下さい。

Sub TESTab()
    Dim cn      As ADODB.Connection
    Dim rs      As ADODB.Recordset
    Dim strSQL  As String
    Dim strXls  As String
    Dim i       As Long
    
    strXls = "D:\Excel\test.xlsx"
    
    strSQL = "SELECT * FROM [Sheet1$]"
    
    Set cn = New ADODB.Connection
    With cn
'        .Provider = "Microsoft.Jet.OLEDB.4.0"
'        .Provider = "Microsoft.ACE.OLEDB.12.0"
        .Provider = IIf(Len(strXls) - InStrRev(strXls, ".") = 4, _
                    "Microsoft.ACE.OLEDB.12.0", "Microsoft.Jet.OLEDB.4.0")
        .Properties("Data Source").Value = strXls
        .Properties("Extended Properties").Value = "Excel 8.0;HDR=YES;"
        .Open
    End With
    Set rs = New ADODB.Recordset
    Set rs = cn.Execute(strSQL)
    
    With xlBook.Worksheets(1)
        .Range("A11").CurrentRegion.Clear
        For i = 0 To rs.Fields.Count - 1
            .Cells(11, i + 1).Value = rs.Fields(i).Name
        Next
        .Range("A12").CopyFromRecordset rs
    End With
    rs.Close
    cn.Close
    Set rs = Nothing
    Set cn = Nothing
End Sub

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。