Bonjour à tous,

J'ai deux fonctions:

1°) Fonction que je vais appelé dans ma deuxième fonction. Elle marche si j’enlève l'argument MonDelim et que je renseigne mon paramètre en brut directement dans ma fonction (ex: délimiteur = "\"). Mais je voulais utiliser un argument pour pouvoir choisir le délimiteur que je veux dans mon autre fonction.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
Public Function ExportCatOxaAvcTest(MaCategorie As Variant, MonDelim As Variant)
    ' Quelques variables
    Dim rst As DAO.Recordset
 
    If IsNull(MaCategorie) Then
    MaCategorieSplit = Split(" \ \ ", "\")
    Else
    MaCategorieSplit = Split(MaCategorie, MonDelim)
    End If
2°) Lorsque j'utilise mon argument, VBA me met le message d'erreur suivant : "erreur de compilation: Attendu : ="
Lorsque j'enlève le paramètre et que j'utilise "\" en brut dans ma fonction ça marche. J'avais au début utilisé un argument de type String mais ça me fait le même résultat. J'ai donc essayé avec un Variant en désespoir de cause
Je suis sur que le problème est tout bête mais je ne vois pas trop d'où ça peut provenir.

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
 
Public Function LectureTBL2()
 
Dim rs As DAO.Recordset
Set rs = CurrentDb.OpenRecordset("Donnees FTP")
rs.MoveLast
While Not rs.BOF
    ExportCatOxaAvcTest((rs.Fields("Classif1")), "\")
    ExportCatOxaAvcTest((rs.Fields("Classif2")), "\")
    ExportCatOxaAvcTest((rs.Fields("Classif3")), "\")
    ExportCatOxaAvcTest((rs.Fields("Classif4")), "\")
    ExportCatOxaAvcTest((rs.Fields("Classif5")), "\")
rs.MovePrevious
Wend
 
rs.Close
Set rs = Nothing
End Function
Si quelqu'un a une idée je veux bien un petit coup de main.

Merci d'avance et bonne journée