Posez votre question Signaler

Textbox - valeur au format texte [Résolu]

n2o_ge 7Messages postés dimanche 7 octobre 2007Date d'inscription 9 octobre 2007Dernière intervention - Dernière réponse le 8 oct. 2007 à 20:28
Bonjour,
Pouvez-vous svp m'aider... je suis depuis peu sur VBA et également sur ce site qui m'a déjà permis d'apprendre passablement de chose... mais j'ai un petit problème avec les textbox.
Elles me renvoient une valeur en format texte alors quand dans mon fichier excel j'en ai besoin en format nombre.
J'ai essayé plusieurs formulation pour incrémenter la valeur à la cellule mais rien n'y fait :-(
EDIDebit.Value = Format(EDIDebit.Value, "0.00")
_________________________________________________
EDIDebit.Value = Format(EDIDebit.Value, "#,##0.00")
_________________________________________________
Dim Nb1 As Double
Nb1 = EDIDebit.Value
_________________________________________________
Dim NouvelleLigne
NouvelleLigne = ActiveSheet.UsedRange.Rows.Count + 1 ' compte nombre de ligne et ajoute un pour mettre à la suite
Cells(NouvelleLigne, 6) = Format(EDIDebit, "0.00")
_________________________________________________
Cells(NouvelleLigne, 6) = Format(EDIDebit, "#,##0.00")
_________________________________________________
Je souhaiterai en faite créer une base de données avec des positions contenant des débits et des crédits (c'est un programme de comptabilité)
Je vous remercie d'avance pour votre aide.
Lire la suite 
Réponse
+0
moins plus
Bonsoir,

les fonctions de conversions en vba sont :
CBool(expression)
CByte(expression)
CCur(expression)
CDate(expression)
CDbl(expression)
CDec(expression)
CInt(expression)
CLng(expression)
CSng(expression)
CStr(expression)
CVar(expression)

eric
Ajouter un commentaire
Annonces
 
moins plus
Réponse
+0
moins plus
je suis désolé mais j'aimerai bien un exemple plus concret :

j'ai une textbox qui s'appelle EDIDebit et je voudrais que quand je la rajoute dans Cells(1,4) elle prenne directement le format nombre.

Désolé :-(
Ajouter un commentaire
Annonces
 
moins plus
Réponse
+0
moins plus
J'ai trouvé une solution pas très propre mais qui fonctionne... la cellule contenant le nombre au format texte je la multiplie par un dans une autre cellule et j'obtient ce que je souhaitai.

Alors si qqun a mieux quand meme en terme de code j'apprécierai :-)
Ajouter un commentaire
Réponse
+0
moins plus
Re,

[A1].value = CCur(EDIDebit.value) si tu veux coller le résultat au format monétaire dans A1 par exemple.
Quand tu butes sur une fonction dans VBA, tu l'écris et tu fais F1 dessus, l'aide excel est très bien documentée avec des exemples.
eric
Ajouter un commentaire
Réponse
+0
moins plus
Salut Eric,

Merci infiniment !!!!!!!!!

En fait d'après ce que j'ai compris il faut d'abord ajouter la valeur dans la cellule et ensuite écrire Cells(1,1).Value = CCur(EDIDebit.value) ?

Merci encore pour ton aide
Lorenzo
Ajouter un commentaire
Réponse
+0
moins plus
Normalement tu peux l'inscrire directement au bon format
eric
Ajouter un commentaire
Réponse
+0
moins plus
Ok, merci beaucoup j'essaierai ce soir.

Et si je veux paramétrer une Currency sans faire référence à une monnaie, comment doit-on transformer Cells(1,1).Value = CCur(EDIDebit.value) ?

Car chez moi (en suisse) il va mettre dans ce format "Sfr #,##0.00" et je n'aimerai pas qu'il y ai des Sfr partout.

Lorenzo
Ajouter un commentaire
Réponse
+0
moins plus
Currency est un type de variable qui conserve tous les chiffres significatifs (donc pas de puissances de 10) avec 4 chi après la virgule en interne, donc bien adapté à la monnaie.
Après c'est à toi de définir le format d'affichage de cette zone dans "format de cellule / Monétaire".
eric
Ajouter un commentaire
Réponse
+0
moins plus
Bonsoir Eric,

Ok donc le paramétrage se fait directement dans excel.

Merci infiniment pour ton aide.

Bonne soirée
Ajouter un commentaire
Ce document intitulé «  Textbox - valeur au format texte  » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes.

Le fait d'être membre vous permet d'avoir des options supplémentaires.