Bonjour ;
j'essai d'utiliser SQL pour une recherche mutictitères sur une feuille EXcel, et j'ai un prob de connection ADOBD je crois sachant que j'ai instalé Microsft ActiveX DAta objects 2.8 Library.
quand j'exsécute mon code un bug m'indique que la feuille en question n'existe pas alors qu'il y'est dans mon classeur
en cherchant plus loin j'ai conclu que la connection ODBC n'est pas établit du coup elle trouve pas mes tables(onglets)
quelqu'un aura t-il une solution ou une idée ?
Merci beaucoup,ci-aprés mon bout du code
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
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40 Dim Conn As ADODB.Connection Dim rsT As ADODB.Recordset Dim Fichier As String, Direction As String, rSQL As String Dim Nbenreg As String Direction = ThisWorkbook.Path Fichier = Classeur 'Mise en place de la connexion avec le fichier Set Conn = New ADODB.Connection With Conn .Provider = "Microsoft.Jet.OLEDB.4.0" .ConnectionString = "Data Source=" & Classeur & _ ";Extended Properties=Excel 8.0;" .Open End With rSQL = "SELECT * FROM [Priorités$] WHERE [rpm_pole]<> 'DP'" 'Exécution de la Recherche SQL Set rsT = New ADODB.Recordset With rsT .ActiveConnection = Conn .Open rSQL, , adOpenKeyset, adLockOptimistic, adCmdTableDirect End With Nb_résultats = rsT.RecordCount Sheets("Résultat").Select Nbenreg = Range("A2").End(xlDown).Row Range("A2:IV" & Nbenreg).Select Selection.Delete Sheets("Priorités").Select Sheets("Priorités").Rows("1:1").Select Selection.Copy Sheets("Résultat").Select Rows("1:1").Select ActiveSheet.Paste Sheets("Résultat").Range("A2").CopyFromRecordset rsT
Partager