VBA de connexion ADO de .fichier xlsx

Je suis en train de copier des données à partir d'un fermé de classeur Excel 2007 (.xlsx) à l'aide d'une connexion ADO.

J'ai la chaîne de connexion de travail. Mais j'obtiens une erreur automation lorsque j'essaie d'ouvrir la Commande dans le jeu d'enregistrements (de la Deuxième à la dernière ligne).

Cela peut ne pas être clair dans le code ci-dessous afin:

"wsSummary" est un objet de feuille de calcul
"strSourceFile" est une chaîne de caractères avec la cible données dont j'ai besoin pour la copie (par ex. Template.xlsx)

strSourceFile = wsSummary.Cells(nFirstRow + 4, 7)
strSheetSource = "Sheet1"
strSQL = "SELECT * FROM [" & strSheetSource & "]"

Set dbConnection = New ADODB.Connection
With dbConnection
    .Provider = "Microsoft.ACE.OLEDB.12.0;"
    .connectionString = "Data Source=" & strPOINTDataPath & strSourceFile & _
                        ";Extended Properties=""Excel 12.0 Xml;HDR=NO;IMEX=1"";"
    .ConnectionTimeout = 40
    .Open
End With
If dbConnection = "" Then GoTo ErrorText

Set cmd = New ADODB.Command
With cmd
    .ActiveConnection = dbConnection
    .CommandText = strSQL
End With

Set rs = New ADODB.Recordset
With rs
    .ActiveConnection = dbConnection
    .CursorLocation = adUseClient
    .CursorType = adOpenDynamic
    .LockType = adLockOptimistic
    .Open cmd
End With
InformationsquelleAutor GreenyMcDuff | 2013-08-09