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