Vba : faire des sommes sur textbox
Résolu
Beeloobop
Messages postés
63
Date d'inscription
Statut
Membre
Dernière intervention
-
-
-
Bonjour,
J'ai réalisé un programme à l'aide de plusieurs userform qui me permet d'entrer dans une feuille un nombre d'heures travaillées.
Sur la feuille excel j'aimerais ensuite sommer ces heures pour avoir un cumul d'heures travaillées (dans le mois, par personne etc...). Mais Excel ne le fait pas et j'ai du mal à saisir pourquoi.
Les heures sont saisies en centièmes d'heures, il y a donc des décimales. On a donc 3,25 ou 3.25 pour exprimer 3 heures et quart.
Voici le code :
Private Sub Validbtn3_Click()
If Tempsbox = "" Then
MsgBox "Veuillez entrer un temps.", vbExclamation
Exit Sub
End If
Dim Remplacement As String
Dim Aremplacer As String
Remplacement = ","
Aremplacer = "."
Tempsbox.Text = Replace(Tempsbox, Aremplacer, Remplacement)
If Not IsNumeric(Tempsbox.Text) Then
Cancel = True
MsgBox "Veuillez entrer un nombre d'heures valide!"
Exit Sub
End If
Dim Lg%
Lg = Range("F65536").End(3).Row
Range("h" & Lg + 1) = UserForm3.Tempsbox
Unload UserForm3
Load UserForm3
UserForm3.Show
End Sub
Actuellement, le programme me rentre systématiquement 3,25 (ou autre) dans la colonne h. Mais la cellule E2 qui contient une bête somme sur la colonne H reste désépérement vide. Comme si les 3,25 étaient du texte et pas des nombres.
Une idée qui pourrait m'aider?
Merci à vous!
Beeloobop
J'ai réalisé un programme à l'aide de plusieurs userform qui me permet d'entrer dans une feuille un nombre d'heures travaillées.
Sur la feuille excel j'aimerais ensuite sommer ces heures pour avoir un cumul d'heures travaillées (dans le mois, par personne etc...). Mais Excel ne le fait pas et j'ai du mal à saisir pourquoi.
Les heures sont saisies en centièmes d'heures, il y a donc des décimales. On a donc 3,25 ou 3.25 pour exprimer 3 heures et quart.
Voici le code :
Private Sub Validbtn3_Click()
If Tempsbox = "" Then
MsgBox "Veuillez entrer un temps.", vbExclamation
Exit Sub
End If
Dim Remplacement As String
Dim Aremplacer As String
Remplacement = ","
Aremplacer = "."
Tempsbox.Text = Replace(Tempsbox, Aremplacer, Remplacement)
If Not IsNumeric(Tempsbox.Text) Then
Cancel = True
MsgBox "Veuillez entrer un nombre d'heures valide!"
Exit Sub
End If
Dim Lg%
Lg = Range("F65536").End(3).Row
Range("h" & Lg + 1) = UserForm3.Tempsbox
Unload UserForm3
Load UserForm3
UserForm3.Show
End Sub
Actuellement, le programme me rentre systématiquement 3,25 (ou autre) dans la colonne h. Mais la cellule E2 qui contient une bête somme sur la colonne H reste désépérement vide. Comme si les 3,25 étaient du texte et pas des nombres.
Une idée qui pourrait m'aider?
Merci à vous!
Beeloobop
A voir également:
- Vba : faire des sommes sur textbox
- Excel compter cellule couleur sans vba - Guide
- Incompatibilité de type vba ✓ - Forum VB / VBA
- Erreur 13 incompatibilité de type VBA excel ✓ - Forum Excel
- Dépassement de capacité vba ✓ - Forum Excel
- Mkdir vba ✓ - Forum VB / VBA
1 réponse
Salut le forum
Une TextBox retourne une valeur texte, pour la convertir en numérique
Si la saisie est la virgule :
Si la saisie est le point :
Mytå
Merci de donner suite à votre question, nous ne sommes pas des robots...
Versions installées [MsProject 2003(FR), Excel 2003-2007(FR)]
Une TextBox retourne une valeur texte, pour la convertir en numérique
Si la saisie est la virgule :
CDbl(UserForm3.Tempsbox)
Si la saisie est le point :
Val(UserForm3.Tempsbox)
Mytå
Merci de donner suite à votre question, nous ne sommes pas des robots...
Versions installées [MsProject 2003(FR), Excel 2003-2007(FR)]