Bonjour, j'utilise la méthode ADO pour lire des plages de cellules.
Voici un bout de code
le soucis c'est que je voudrais également lire les plages
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 Dim oCon As ADODB.Connection, oRst As ADODB.Recordset, oCmd As ADODB.Command, Recup As String Recup = "B77:B96" Set oCon = New ADODB.Connection With oCon .Provider = "Microsoft.Jet.OLEDB.4.0" .ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0 ;Data Source=" & FichierChoisiPanier & _ ";Extended Properties=""Excel 12.0;HDR=YES;""" .Open End With FeuilPanier = FeuilPanier & "$" Set oCmd = New ADODB.Command With oCmd .ActiveConnection = oCon .CommandText = "SELECT * FROM [" & FeuilPanier & Recup & "]" End With Set oRst = New ADODB.Recordset oRst.Open oCmd, , adOpenKeyset, adLockOptimistic Set oRst = oCon.Execute("[" & FeuilPanier & Recup & "]") Workbooks("TP8.xlsm").Sheets(NomFeuil).Range("C10").CopyFromRecordset oRst
sans à chaque fois redéfinir la ligne suivante
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Range("D6").Value Range("B5").Value Range("B6:B9").Value:
En gros je voudrais savoir s'il est possible de raccourcir le code.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Set oCmd = New ADODB.Command Set oRst = New ADODB.Recordset
Une Idée?
Merci d'avance.
Partager