Bonjour,

Je m'excuse d'abord pour m'être trompé de forum au tout départ.

J'essaie de créer un outil qui permet de remplir une base de données access à partir de Excel sur VBA. J'ai pu gérer cette première étape.

J'essaie maintenant de faire en sorte que lorsque l'utilisateur rentre un champ dans une cellule Excel et en appuie sur le bouton MATH, le fichier excel propose dans la colonne H les différentes valeurs possibles qu'il aura importé du champ REF HEADER de la table HEADER de la base de données ACCESS (Dico).

Mon problème se trouve au niveau de l'affichage je pense, je ne sais pas trop comment afficher les valeurs trouvées. Pourrais-je avoir des indications svp ?

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
 
 
Public Sub matchREFs()
 
Dim refsource As String
 
refsource = "" & Sheets(1).Range("F6").Value
 
MsgBox (refsource)
 
'sql = "INSERT INTO REF_HEADERS ( HEADER ) VALUES (" & refsource & ");"
 
 
Dim SQLstring As String
 
Dim db As DataBase
Set db = New DataBase
 
Dim isOpen As Boolean
Dim filePath As String
 
filePath = ActiveWorkbook.Path & "\Dictionary.accdb"
 
db.Fichier = filePath
If db.openConnection(DBType.ACCESS_2012) = False Then
    Exit Sub
End If
 
Dim sql As String
Dim rs As Recordset
 
sql = "SELECT HEADER FROM REF_HEADERS WHERE HEADER Like (" & refsource & ");"
 
 
Set rs = db.OpenRecordSet(sql)
If rs Is Nothing Then
    Exit Sub
End If
Dim ResSQL As String
Do While rs.EOF = False
For i = 0 To rs.Fields.Count - 1
    ResSQL = ResSQL & rs.Fields.Item(i).Name & ";" & rs.Fields.Item(i).Value & Chr(13) & Chr(10)
Next
rs.MoveNext
Loop
 
 
MsgBox ResSQL
 
If db.executeSQL(sql) = False Then
    db.closeConnection
    Exit Sub
End If
 
db.closeConnection
 
End Sub
Merci par avance.

Cordialement