Importer ligne entiere plutot que champs par champs

carlos

XLDnaute Impliqué
Supporter XLD
bonjour

Je souhaite importer toutes les lignes filtrées d'un fichier fermé sous excel sans passer par une boucle pour chaque champs , il y en a 30 ..
voici le code à remplacer :

For i = 1 To 30
Cells(1 + n, i) = Rs.Fields(i - 1).Value
Next i

voici le code complet:

Dim Cn As String
Dim Rs As ADODB.Recordset
Dim n As Long
Dim i As Byte
Dim Dossier As String, Cible As String
Dim Famillerecherche As String
Application.ScreenUpdating = False
Famillerecherche = ComboImport.Value
Dossier = "C:\Dg A commander\Extraction familles du 23 mars 09.xls"
Cn = "DRIVER={Microsoft Excel Driver (*.xls)};" & _
"ReadOnly=1;DBQ=" & Dossier & ";" & _
"extended properties=""Excel 8.0;"""
Cible = "SELECT DISTINCT * FROM [Extractions$] WHERE Famille = '" & Famillerecherche & "';"
Set Rs = New ADODB.Recordset
Rs.Open Cible, Cn, adOpenKeyset
' On Error Resume Next
Range("a2:ai36000").ClearContents
n = Range("b65000").End(xlUp).Row
Do While Not Rs.EOF
n = n + 1
For i = 1 To 30
Cells(1 + n, i) = Rs.Fields(i - 1).Value
Next i
Rs.MoveNext
Loop
Rs.Close
Set Rs = Nothing
Application.ScreenUpdating = True
End Sub

Private Sub UserForm_Initialize()
ComboImport.AddItem "Produit"
ComboImport.AddItem "Livre"
ComboImport.AddItem "Musique"

End Sub


Merci

Carlos
 

Discussions similaires

Réponses
9
Affichages
247
Réponses
6
Affichages
421

Statistiques des forums

Discussions
314 053
Messages
2 105 101
Membres
109 264
dernier inscrit
lejulpat