Bonjour,
J'essaie de remplir une base de données access à partir de VBA. ça amrche plutôt bien, le seul hic est que l'insert s'arrête dès qu'il rencontre un doublon.
J'ai plus de 5000 lignes à gérer, j'ai supprimé tous les vrais doublons. Les doublons restants sont principalement dus aux espaces en plus dans certaines cellules et je ne sais pas comment répérer ceux là dans Excel.
Ma solution est donc de faire en sorte que l'export continue après le doublon. Avez-vous des indications ?
J'espère me faire comprendre, j'utilise la fonction ci-dessous pour insérer les données dans ma base.
Merci.
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 Public Function addMultiSourceRef(refsource As Range) As Boolean Dim sql 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 addMultiSourceRef = False Exit Function End If Dim values As String Dim a As Range For Each a In refsource values = "'" & a.Value & "'" sql = "INSERT INTO REF_HEADERS ( HEADER ) VALUES (" & values & ")" MsgBox sql If db.executeSQL(sql) = False Then db.closeConnection addMultiSourceRef = False Exit Function End If Next db.closeConnection addMultiSourceRef = True End Function
COrdialement
Partager