Bonjour,
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 ?
Merci par avance.
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
Cordialement
Partager