Convertir le contenue de textbox en pourcentage sur la feuille E

Fermé
amiro2017 Messages postés 194 Date d'inscription mardi 28 février 2017 Statut Membre Dernière intervention 31 août 2017 - 30 mai 2017 à 15:23
yg_be Messages postés 22698 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 avril 2024 - 1 juin 2017 à 07:41
Bonjour,

je souhaite transférez des données de text box vers la feuille excel mais je désire que ces valeurs seront de format pourcentage sur la feuille excel.

comment faire?

merci d'avance


A voir également:

2 réponses

Kuartz Messages postés 850 Date d'inscription vendredi 13 février 2015 Statut Membre Dernière intervention 15 février 2019 61
Modifié le 30 mai 2017 à 17:20
Bonjour,

Convertissez dans un premier temps le contenu de la TextBox en valeur.

Ensuite, appliquez un format à cette valeur.

Convertir :

valeur = val(TextBox.value)


Formatage :

With Range("XX")
    .value=valeur
    .NumberFormat = "0.00%"
End With


En une seule fois :

With Range("XX")
    .value=val(TextBox.Value)
    .NumberFormat = "0.00%"
End With



Cordialement.
2
amiro2017 Messages postés 194 Date d'inscription mardi 28 février 2017 Statut Membre Dernière intervention 31 août 2017 1
Modifié le 30 mai 2017 à 19:40
merci Kuartz mais cela me provoque une erreur ! voici le code de bouton enregistrer :

<code>Private Sub CommandButton6_Click()
Dim k As Integer, k1 As Integer, k2 As Integer, k3 As Integer, k4 As Integer, k5 As Integer, k6 As Integer

Worksheets("Change au comptant").Activate

k = Range("I" & Rows.Count).End(xlUp).Row + 1
k1 = Range("K" & Rows.Count).End(xlUp).Row + 1
k2 = Range("O" & Rows.Count).End(xlUp).Row + 1
k3 = Range("P" & Rows.Count).End(xlUp).Row + 1
k4 = Range("Q" & Rows.Count).End(xlUp).Row + 1
k5 = Range("R" & Rows.Count).End(xlUp).Row + 1

Cells(k, 9).Value = Date
Cells(k3, 16).Value = Date

With Range("K")
.Value = Val(TextBox13.Value)
.NumberFormat = "0.00%"
End With

' Cells(k1, 11).Value = "'" & CStr(-TextBox13.Value)
Cells(k1, 12).Value = "'" & CStr(-TextBox4.Value)
Cells(k1, 13).Value = "'" & CStr(-TextBox5.Value)
Cells(k1, 14).Value = "'" & CStr(TextBox6.Value)
Cells(k2, 15).Value = "'" & CStr(TextBox9.Value)
Cells(k4, 17).Value = "'" & CStr(TextBox7.Value)
Cells(k4, 18).Value = "'" & CStr(TextBox8.Value)


End Sub<basic/code>
0
yg_be Messages postés 22698 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 avril 2024 1 471 > amiro2017 Messages postés 194 Date d'inscription mardi 28 février 2017 Statut Membre Dernière intervention 31 août 2017
30 mai 2017 à 23:18
quelle erreur?
0
amiro2017 Messages postés 194 Date d'inscription mardi 28 février 2017 Statut Membre Dernière intervention 31 août 2017 1 > yg_be Messages postés 22698 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 avril 2024
31 mai 2017 à 01:09
bonsoir yg_be

je vous remercie pour votre intérêt , en faite ma problématique découle dans le bouton enregistrement : en effet je vais enregistrer des valeurs de textbox vers une cellule excel : j'ai réussi dans un enregistrement sous format text selon https://forums.commentcamarche.net/forum/affich-34621463-enregistrement-faux#p34621881 mais je souhaite que ces valeurs seront enregistrées sous format pourcentages et numériques pour que je puisse l'utiliser par la suite car en utilisant ces données sous format text me pose de problème dans la suite du calcul!

exemple : si l'affichage de textbox est 7.23 je souhaite que la cellule excel est : 7.23% et non pas de format text mais de format numérique pour que je puisse l'utiliser par la suite et merci bq
0
yg_be Messages postés 22698 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 avril 2024 1 471 > amiro2017 Messages postés 194 Date d'inscription mardi 28 février 2017 Statut Membre Dernière intervention 31 août 2017
31 mai 2017 à 08:01
quelle est l'erreur que tu reçois (vois ta réponse 30 mai 2017 à 19:39) ?
0
amiro2017 Messages postés 194 Date d'inscription mardi 28 février 2017 Statut Membre Dernière intervention 31 août 2017 1 > yg_be Messages postés 22698 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 avril 2024
Modifié le 31 mai 2017 à 08:18
Bonjour yg_be,

c'est pas le même erreur , en fait , je désire utiliser des données de la feuille excel qui sont enregistrées par le programme suivant :

Cells(k1, 11).Value = "'" & CStr(Format(-TextBox13.Value / 100, "0.000%"))
        Cells(k1, 12).Value = "'" & CStr(Format(-TextBox4.Value / 100, "0.000%"))
        Cells(k1, 13).Value = "'" & CStr(Format(-TextBox5.Value / 100, "0.000%"))


ils sont bien enregistrés dans la feuille excel grace au programme ci-dessus .

le problème ce que lorsque je veux l'utilser par la suite dans autre code de calcul comme ci-dessous:

For j = DerniereLigne2 - 1 To (DerniereLigne2 - 62) Step -1
m0(DerniereLigne2 - j) = Abs((Cells(j, 13).Value))
m1(DerniereLigne2 - j) = Abs((Cells(j, 11).Value))
Next j


le programme affiche erreur de comtabilité de type sachant que m0 tableau de type double

je fais des tests par msg : mais la même chose eurreur...
je décide d'appliquer val et cdbl pour convertir le type de données en décimale mais malhereusement sans succées

merci pour votre coopération
0
yg_be Messages postés 22698 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 avril 2024 1 471
1 juin 2017 à 07:41
remplace:
Cells(k1, 13).Value = "'" & CStr(Format(-TextBox5.Value / 100, "0.000%")) 

par:
Cells(k1, 13).Value = cdbl(TextBox5.Value) / 100
0