Valeur numérique à partir de l'userform

Bonjour le forum

Après plusieurs essais je n'arrive pas à retranscrire sur la feuille en numérique à partir de l'userform.

Les valeurs dans les textboxs sont des valeurs numériques.

Après validation je les retrouve sous forme de texte.

Private Sub BtnInserer_Click()

    Dim L As Integer
    Sheets("SUIVI FACTURES").Activate
    If MsgBox("Etes-vous certain de vouloir d'enregistrer ces données ?", vbYesNo, "Demande de confirmation") = vbYes Then
        L = Sheets("SUIVI FACTURES").Range("a65536").End(xlUp).Row + 1    'Permet de se positionner sur la dernière ligne de tableau NON VIDE

        Range("A" & L).Value = TxtNom
        Range("B" & L).Value = TxtBFacture
        Range("C" & L).Value = DateDuJour    '=SI([@[Date facture]]="";"";FIN.MOIS([@[Date facture]]+30;0))
        Range("E" & L).Value = TxtTotalTTC
        Range("J" & L).Value = DateReglement
        Range("Q" & L).Value = TxtTVA5
        Range("R" & L).Value = TxtTVA7
        Range("S" & L).Value = TxtTVA10
        Range("T" & L).Value = TxtTVA20
        Range("AK" & L).Value = TxtReglee

    End If
    MsgBox ("Référence facture insérée dans SUIVI FACTURES")    'Vous informe que le présent contact est insérer dans votre tableau Excel.
    Unload Me    'Ferme le formulaire

End Sub

et les textboxs

Private Sub TxtTVA5_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
    Dim strpass As String
    strpass = TxtTVA5.Value
    If ChainePasOK(strpass) = True Then Cancel = True: TxtTVA5.Value = "": Beep: MsgBox "Saisie non valide !"
End Sub
Private Sub TxtTVA5_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
    If InStr("1234567890,-", Chr(KeyAscii)) = 0 Or TxtTVA5.SelStart > 0 And Chr(KeyAscii) = "-" _
       Or InStr(TxtTVA5.Value, ",") <> 0 And Chr(KeyAscii) = "," Then
        KeyAscii = 0: Beep
    End If
End Sub

Merci

Amicalement

Laurent

Bonjour,

Dans une Textbox, la valeur est toujours de type Texte. Pour obtenir un nombre, tu dois effectuer conversion.

Exemple de fonctions de conversion :

CDbl (Double)

CInt (Integer)

CLng (Long)

Etc.

A+

Bonjour le forum, Bonjour Frangy

Je viens d'essayer ceci et çà à l'aire de fonctionner

Private Sub BtnInserer_Click()
    Dim L As Integer
    Sheets("SUIVI FACTURES").Activate
    If MsgBox("Etes-vous certain de vouloir d'enregistrer ces données ?", vbYesNo, "Demande de confirmation") = vbYes Then
        L = Sheets("SUIVI FACTURES").Range("a65536").End(xlUp).Row + 1    'Permet de se positionner sur la dernière ligne de tableau NON VIDE

        Cells(L, 1) = (C_RECAP_SUIVI_FACTURES.TxtNom)    ' ------------------- Nom
        Cells(L, 2) = (C_RECAP_SUIVI_FACTURES.TxtBFacture)    ' -------------- Facture
        Cells(L, 3) = (C_RECAP_SUIVI_FACTURES.DateDuJour)    ' --------------- Date de la facture
        Cells(L, 5) = CDbl(C_RECAP_SUIVI_FACTURES.TxtTotalTTC)    ' ---------- Prix TTC
        Cells(L, 10) = (C_RECAP_SUIVI_FACTURES.DateReglement)    ' ----------- Date Reglement
        Cells(L, 17) = CDbl(C_RECAP_SUIVI_FACTURES.TxtTVA5)    ' ------------- TVA 5.5%
        Cells(L, 18) = CDbl(C_RECAP_SUIVI_FACTURES.TxtTVA7)    ' ------------- TVA 7%
        Cells(L, 19) = CDbl(C_RECAP_SUIVI_FACTURES.TxtTVA10)    ' ------------ TVA 10%
        Cells(L, 20) = CDbl(C_RECAP_SUIVI_FACTURES.TxtTVA20)    ' ------------ TVA 20%
        Cells(L, 37) = (C_RECAP_SUIVI_FACTURES.TxtReglee)    ' --------------- Reglee
    End If
    MsgBox ("Référence facture insérée dans SUIVI FACTURES")    'Vous informe que le présent contact est insérer dans votre tableau Excel.
    Unload Me    'Ferme le formulaire

End Sub

Cordialement

Laurent

Rechercher des sujets similaires à "valeur numerique partir userform"