INSERT dans ACCESS par macro VBA
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:
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