Bonjour,
Je sais que ce sujet existe partout, mais franchement j'ai tout essayé et là je deviens carrément chèvre BEHHHHH
Voila le soucis: dans un userform j'ai un certain nombre de textbox dont le contenu à la validation doit être formaté en monétaire pour pouvoir ensuite être utilisé dans des formules, et quoi que je fasse y a toujours un truc qui déconne :
soit il me le garde en texte quand le chiffre dépasse le millier, soit c'est quand il y a des décimales, soit .....
Bref si quelqu'un pouvait m'aider avant que je me mette à brouter de l'herbe....
Voici un extrait du code :
je prend ici la Textbox_salaire, mais j'en ai 5 ou 6 comme ça
donc ca c'est une première mise en forme quant on quitte la textbox
et Voici la seconde mise en forme à la validation du bouton enregistrer
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 Private Sub TextBox_Salaire_Exit(ByVal Cancel As MSForms.ReturnBoolean) With TextBox_Salaire .Value = Format(TextBox_Salaire, "#'##0.00 ") If .Value = "" Then .Value = "Décimales avec une virgule : 12,00" .ForeColor = RGB(128, 128, 128) End If End With End Sub
Je vous préviens c'est très moche : tout ce que j'ai trouvé c'est de multiplier les changements de formats et les replace et ça marche..... presque :
- ok pour les nombres avec des milliers
- ok pour les nombres avec des décimales et des milliers
- ok pour les nombre avec des dizaines ou des centaines SANS décimales
- BUG pour les nombres avec des dizaines ou des centaines ET AVEC des décimales (PS, ça marche quand j'écris un nombre avec ",00" mais pas avec par exemple ",03")
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 .Cells(L1 + 12, 1) = TextBox_Salaire.Value .Cells(L1 + 12, 1).NumberFormat = "#'##0.00 " .Cells(L1 + 12, 1) = Replace(.Cells(L1 + 12, 1), ",", ".") .Cells(L1 + 12, 1) = Replace(.Cells(L1 + 12, 1), "'", "") .Cells(L1 + 12, 1).FormulaR1C1 = .Cells(L1 + 12, 1).Value .Cells(L1 + 12, 1).NumberFormat = "#,##0.00 "
Pitié que quelqu'un m'aide, m'apporte au moins une trace de piste de solution, je veux rester humaine moi
Partager