Vba Access : Split

Résolu
Melycea -  
 Melycea -
Bonjour,

Je suis en train de créer une base de données sur Access 97.
Après avoir découvert la fonction "split"qui règlerai tous mes soucis, je me suis malheureusement rendue compte qu'elle n'existe pas sous ma version d'Access...

Quelqu'un aurait une alternative?

Merci de vos réponses.

2 réponses

  1. Utilisateur anonyme
     
    Bonjour,

    Il suffit de la créer !

    Voilà une suggestion !

    Option Explicit 
    
    Public Function PersoSplit(ByVal pChaine As String, ByVal pCaractere As String) As Variant 
    
        Dim Mot As String 
        Dim PartieDeChaine As String 
        Dim Longueur As Long 
        Dim Boucle As Long 
        Dim Indice As Long 
        Dim Resultat() As Variant 
         
        Indice = 1 
        Longueur = Len(pChaine) 
        For Boucle = 1 To Longueur 
            PartieDeChaine = Mid(pChaine, Boucle, 1) 
            If (PartieDeChaine <> pCaractere) Then 
                Mot = Mot & PartieDeChaine 
            Else 
                ReDim Preserve Resultat(Indice) 
                Indice = (Indice + 1) 
                Resultat(Indice - 1) = Mot 
                Mot = "" 
            End If 
        Next Boucle 
         
        If (Mot <> "") Then 
            ReDim Preserve Resultat(Indice) 
            Indice = (Indice + 1) 
            Resultat(Indice - 1) = Mot 
        End If 
         
        PersoSplit = Resultat 
    
    End Function 
    ' 
    
    Public Sub TestSplit() 
    
        Dim Chaine As String 
        Dim Bloc As Variant 
        Dim Boucle As Long 
        Dim Resultat As String 
         
        Chaine = "25;16;45;;;87;95" 
         
        Bloc = PersoSplit(Chaine, ";") 
         
        For Boucle = 0 To UBound(Bloc) 
            Resultat = Resultat & Bloc(Boucle) & vbCrLf 
        Next Boucle 
    
        MsgBox Resultat 
    
    End Sub 
    


    Cdt

    Lupin
    1
  2. Melycea
     
    C'est ce que j'ai fini par faire finalement mais ma version parait bien plus complexe.

    Merci beaucoup pour ta réponse!
    0