Bonjour,

Dans une feuille nommée Feuil1, la liste suivante :
Nom....Prénom
DURAND...Martin
DUPOND...Yves
etc...


et voici mon code VBA :

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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
Sub test_sql_excel()
 
 
    Dim Conn As ADODB.Connection
    Dim rsT As ADODB.Recordset
    Dim Fichier As String, Direction As String, rSQL As String
 
    Direction = ThisWorkbook.Path
    Fichier = ThisWorkbook.Name
    chemin = Direction & "\" & Fichier
 
 
    '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=" & chemin & ";Extended Properties=Excel 8.0;"
            .Open
        End With
 
 
 
 
    'Déclaration de la Recherche au format SQL (% remplace * dans la recherche)
    rSQL = "SELECT * FROM [FEUIL1$] WHERE [NOM] = 'DURAND'"
 
 
    '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
 
 
    'Récupération des enregistrements...
    For i = 0 To rsT.RecordCount - 1
 
        '...dans une msgbox
        MsgBox rsT.Fields(1).Value
 
         rsT.MoveNext
    Next i
 
 
    If Nb_résultats = 0 Then MsgBox "Aucune réf. trouvée !", vbInformation
 
 
 
    'Fermeture de la connexion avec la table
    rsT.Close
    Conn.Close
 
 
End Sub

Ce code fonctionne parfaitement.
Il permet de faire une recherche SQL à partir d'une liste contenue sur la "feuil1".

Mon soucis, c'est en quittant le fichier (juste en fermant le fichier, sans fermer Excel complètement... en fait le Projet VBA reste ouvert !!

Pourquoi !? Ceci est anormal et pose problème lorsque l'on protège le projet VBA par un mot de passe... Dans ce cas à la fermeture il demande le mot de passe à chaque fois !!

A l'aide svp

Merci

A+

Dams'