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.

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
Merci.

COrdialement