Fonction Split

Bonjour,

Actuellement j'utilise la fonction split avec l'opérateur "," voici le code :

Private Sub CommandButton13_Click()
On Error GoTo Erreur:
   Dim monTab() As String

        monTab = VBA.Split(TextBox12.Value, ".")
        'MsgBox "00" & monTab(0) & " " & monTab(1) & "00"

            Range("CaseAQ1") = monTab(0)
               a = Range("CaseAQ1").Text
                    Range("CaseAQ1") = ""

            Range("CaseAQ1") = monTab(1) * 10
                b = Range("CaseAQ1").Text
                        Range("CaseAQ1") = ""

            MsgBox a & " " & b

Erreur:
    If err.Number = 9 Then
        MsgBox "Pas de chiffre à virgule, faut faire quoi du coup ?"
    End If

Celui-ci fonctionne très bien hors je souhaiterais l'améliorer en permettant d'ajouter un second séparateur. En plus de la virgule je souhaiterais que le "." (le point) soit lui aussi prit en compte comme un séparateur.

Auriez-vous une idée de comment je pourrais faire sa ?

Merci bien les gens ^^

Bonjour,

Private Sub CommandButton13_Click()
Dim monTab() As String
        If InStr(TextBox12.Value, ".") > 0 Then
            monTab = VBA.Split(TextBox12.Value, ".")
        ElseIf InStr(TextBox12.Value, ",") > 0 Then
            monTab = VBA.Split(TextBox12.Value, ",")
        Else
            MsgBox "Pas de chiffre avec une virgule ou un point."
            Exit Sub
        End If

        'MsgBox "00" & monTab(0) & " " & monTab(1) & "00"
        Range("CaseAQ1") = monTab(0)
        a = Range("CaseAQ1").Text
        Range("CaseAQ1") = ""

        Range("CaseAQ1") = monTab(1) * 10
        b = Range("CaseAQ1").Text
        Range("CaseAQ1") = ""
        MsgBox a & " " & b
End Sub

A+

frangy a écrit :

Bonjour,

Private Sub CommandButton13_Click()
Dim monTab() As String
        If InStr(TextBox12.Value, ".") > 0 Then
            monTab = VBA.Split(TextBox12.Value, ".")
        ElseIf InStr(TextBox12.Value, ",") > 0 Then
            monTab = VBA.Split(TextBox12.Value, ",")
        Else
            MsgBox "Pas de chiffre avec une virgule ou un point."
            Exit Sub
        End If

        'MsgBox "00" & monTab(0) & " " & monTab(1) & "00"
        Range("CaseAQ1") = monTab(0)
        a = Range("CaseAQ1").Text
        Range("CaseAQ1") = ""

        Range("CaseAQ1") = monTab(1) * 10
        b = Range("CaseAQ1").Text
        Range("CaseAQ1") = ""
        MsgBox a & " " & b
End Sub

A+

Bonjour,

Je te remercie pour ton aide. Si je comprend bien ce code consiste a chercher le séparateur dans la case puis en fonction du séparateur qu'il a trouver il exécute un code diffèrent pour le point ou la virgule ?

En tout cas encore merci, je passe le sujet en résolut

Je dirais plutôt que le code vérifie si la Textbox contient une virgule ou un point.

Dans l'un ou l'autre de ces 2 cas, le traitement suivant est réalisé, sinon on affiche un message et on sort de la procédure.

A+

frangy a écrit :

Je dirais plutôt que le code vérifie si la Textbox contient une virgule ou un point.

Dans l'un ou l'autre de ces 2 cas, le traitement suivant est réalisé, sinon on affiche un message et on sort de la procédure.

A+

D'accord, merci pour ton explication et pour ton aide.

A bientôt ^^

Rechercher des sujets similaires à "fonction split"