OVH Cloud OVH Cloud

Format Nombre TextBox et Feuille

25 réponses
Avatar
Alex
Bonjour =E0 tous,

J'ai tent=E9 de me d=E9brouiller avec les sujets d=E9j=E0 en ligne, mais je=
ne
parviens pas au r=E9sultat souhait=E9. J'ai un textbox (pour une entr=E9e d=
e
montant avec s=E9parateur de milliers et deux chiffres apr=E8s la virgule
sans symbole monaitaire). Ce textbox sert =E0 la creation d'une nouvelle
entr=E9e ou en modificaion d'entr=E9e. J'avais comme parade la
multiplication par 1.00 de la valeur de la textbox, afin que le
montant soit bien reconnu en chiffre et non en texte sur ma feuille de
calcul. Cette solution fonctionne bien en mode cr=E9ation, mais en mode
modification, ce dernier ne fonctionne que si je modifie la textbox.
Par contre, si je ne modifie pas la valeur de la textbox, malgr=E9
l'utilisation de ma "parade", j'obtiens un chiffre reconnu en texte.

C'est pourquoi je d=E9sirerai savoir si quelqu'un pourrait me dire
comment bien parametrer le format nombre d'un TextBox, afin que celui-
ci soit reconnu comme nombre aussi bien dans le textbox que sur la
feuille de calcul ?

Merci par avance de vos r=E9ponse.
Alex

10 réponses

1 2 3
Avatar
Daniel.C
Sur quelle ligne ?
Quelle valeur as-tu entrée dans la textbox ?
Daniel

On 20 jan, 14:42, Daniel.C wrote:
Essaie :
[A1] = Me.TextBox1.Value * 1
[A1].NumberFormat = "#.00#"

Daniel




Je viens de tester ca me donne erreur d'execution 13 - Imcompatibilite
de type


Avatar
Alex
Dès la ligne 1, j'avais en A1 la valeur de 1253.00
mais en fait, en cumulant tes anciennes lignes avec les dernieres
j'obtiens ceci :

Mtt.Value = [A1]
[A1] = Me.Mtt.Value * 1
[A1].NumberFormat = "0.00"

Et la ça fonctionne

Reste à voir maintenant le sens inverse, cad l'inscription de ma
saisie dans la feuille
Avatar
Daniel.C
Ta saisie, c'est la m^me chose :
1. saisie dans Mtt
2.
[A1] = Me.Mtt.Value * 1
[A1].NumberFormat = "0.00"
Daniel

Dès la ligne 1, j'avais en A1 la valeur de 1253.00
mais en fait, en cumulant tes anciennes lignes avec les dernieres
j'obtiens ceci :

Mtt.Value = [A1]
[A1] = Me.Mtt.Value * 1
[A1].NumberFormat = "0.00"

Et la ça fonctionne

Reste à voir maintenant le sens inverse, cad l'inscription de ma
saisie dans la feuille


Avatar
Alex
On 20 jan, 15:30, Daniel.C wrote:
Ta saisie, c'est la m^me chose :
1. saisie dans Mtt
2.
[A1] = Me.Mtt.Value * 1
[A1].NumberFormat = "0.00"
Daniel



> Dès la ligne 1, j'avais en A1 la valeur de 1253.00
> mais en fait, en cumulant tes anciennes lignes avec les dernieres
> j'obtiens ceci :

> Mtt.Value = [A1]
> [A1] = Me.Mtt.Value * 1
> [A1].NumberFormat = "0.00"

> Et la ça fonctionne

> Reste à voir maintenant le sens inverse, cad l'inscription de ma
> saisie dans la feuille- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -



Merci Daniel. Ca fonctionne, juste un problème que le point du pavé
numérique n'est pas reconnu. J'ai tenté de modificer dans outils
options la virgule par un point et vise versa mais ca plente comme meme
Avatar
Daniel.C
> On 20 jan, 15:30, Daniel.C wrote:
Ta saisie, c'est la m^me chose :
1. saisie dans Mtt
2.
[A1] = Me.Mtt.Value * 1
[A1].NumberFormat = "0.00"
Daniel



Dès la ligne 1, j'avais en A1 la valeur de 1253.00
mais en fait, en cumulant tes anciennes lignes avec les dernieres
j'obtiens ceci :



Mtt.Value = [A1]
[A1] = Me.Mtt.Value * 1
[A1].NumberFormat = "0.00"



Et la ça fonctionne



Reste à voir maintenant le sens inverse, cad l'inscription de ma
saisie dans la feuille- Masquer le texte des messages précédents -



- Afficher le texte des messages précédents -



Merci Daniel. Ca fonctionne, juste un problème que le point du pavé
numérique n'est pas reconnu. J'ai tenté de modificer dans outils
options la virgule par un point et vise versa mais ca plente comme meme



Je ne comprends pas le problème. Peux-tu expliciter ?
Daniel
Avatar
Alex
C'est encore moi.

De plus, si ma cellule est vide, j'ai denouveau Erreur excution 13.
Avatar
Daniel.C
Bon. Tu testes si la cellule est vide. Tu veux faire quoi, si elle est
vide ?
Daniel

C'est encore moi.

De plus, si ma cellule est vide, j'ai denouveau Erreur excution 13.


Avatar
Alex
Merci Daniel pour ta patience. Si elle est vide, je veux que mon
textebox soit vide comme ma cellule. (j'ai reussi à faire cette
condition)
If [A1].Value = "" Then
Mtt.Value = [A1]
Else
Mtt.Value = [A1]
[A1] = Me.Mtt.Value * 1
[A1].NumberFormat = "0.00"
End If
Ce qui m'ennuie le plus, maintenant c'est ce probleme de saisie avec
le pavé numérique.
Avatar
Daniel.C
> Ce qui m'ennuie le plus, maintenant c'est ce probleme de saisie avec
le pavé numérique.



Tu peux l'expliquer ?
Daniel
Avatar
Hervé
Bonsoir,
Teste ceci :

Dim Valeur As Double

'erreur si pas numérique
On Error Resume Next
'remplace le point par la virgule
'à voir si nécessaire ?
Valeur = Replace(TextBox1.Text, ".", ",")

If Err.Number = 0 Then
With Worksheets("Feuil1")
.[A1] = Valeur
.[A1].NumberFormat = "#,##0.00"
End With
End If

Hervé.


"Alex" a écrit dans le message de
news:
Isabelle,

Ta seconde proposition m'inscrit la valeur saisie dans la textbox en
valeur texte sur ma feuille, mais respectant la mise en forme du
nombre (j'ai toujours le triangle vert dans la cellule, ou je suis
obligé de cliquer pour convertir la donné en nombre)
1 2 3