VBA - Conversion d'un texte en nombre [Résolu/Fermé]

Signaler
-
 mcetools -
C'est encore moi !
Je voulais savoir s'il existe une fonction qui convertit du texte en un nombre (plus exectement en %) pour le stocker dans une cellule (Excel).
Voici l'exemple de ce que je fais :

ActiveCell.Value = UserForm3!TextBox1


Mais le problème, c'est que la cellule dans laquellle se stocke la valeur se transforme en fomat texte !

Ya-t-il un soluce ?
Merci

9 réponses

une petite précision

my_string="9874"
val(my_string)=9874


time is not money, time is life
61
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 87645 internautes nous ont dit merci ce mois-ci

Merci !
une recherche et hop, mon problème est résolu !
Cdlt,
eRicos31
Messages postés
337
Date d'inscription
vendredi 21 décembre 2007
Statut
Membre
Dernière intervention
9 mai 2013
89
Bon jour, XRay
peut etre ça te convient

If UserForm3!TextBox1.Value = "" Then
  ActiveCell.Value .Value = ""
Else
  ActiveCell.Value = CDbl(UserForm3!TextBox1.Value)
End If


bonne journée
Excellent !
Je cherchais depuis hier le moyen de transformer un nombre entré par un TextBox en nombre et c'est maintenant chose faite !
Génial !
Merci beaucoup pour l'info...
blb
j'ai deux colonnes la premières contient une liste très longue d'articles et la secondes le code de chacun je souhaite savoir si en tapant juste le numéro de code de l'article le produit en texte apparaitra . merci
Messages postés
23913
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
13 janvier 2020
2 729
excuse-moi, je n'ai pas fait attention.

Dans l'aide de VBA, on parle de VAL... qui convient tout à fait... ;-)

A+ Blux
 "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"
Oki !! Merci !
Mais ou est-ce que je peux avoir une liste des fonctions utiles sans avoir a venir poster un message ici ?...
Merci
blux
Messages postés
23913
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
13 janvier 2020
2 729 > XRay
et bien, dans l'aide ! :-)

tu auras la liste des fonctions, maintenant, c'est à toi de juger si elles sont "utiles" ;-)

A+ Blux
 "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"
utilises plutot la fonction VAL() qui transforme du texte en chiffre et qui est une fonction VBA

my_string = "9874"
val(my_string)=9874



time is not money, time is life
Bravo ... c est exactement ce que je cherchais !
Moi qui essayais desesperement avec CNUM
BONJOURS a tous

Dans un tableau fait avec excel 2003 je voudrais remplacer automatiquement dans une autre colonne les F PAR 2 et les H par 1
POur le debutant que je suis cela me parait dur car je ne trouve pas de fonction pour le faire
Y a t'il une astuce
merci pour toute reponse
control + F ==> rechercher/remplacer ==> rechercher: F remplacer par: 2 .. même démarche pour les H ==>1
Messages postés
22
Date d'inscription
mardi 30 juin 2009
Statut
Membre
Dernière intervention
25 août 2009

salut Xray,
Je te propose une methode en 2 etapes :

1/ tu fait un copy/pastespecial (change les parametres) pour coller en tant que nombre le contenu des cases qui t interesse
2/ tu changes le style "a la main" En recordant une macro.

Tu compile le tout en 1 programme. le tour est joue!
Messages postés
5
Date d'inscription
jeudi 25 mars 2010
Statut
Membre
Dernière intervention
17 décembre 2013

.............D............I..............E..................I............. F...............I............... G..........I
...........................I..................................I...............................I............................I
....11/03/2010 ....I........ Couleur ...........I............ 45..............I... #VALEUR!.........I
....25/03/2010 ....I.......... Bois ...............I........... 60...............I... #VALEUR! .......I


voici un apercu de mon tableau et voici ma formule en G : = E6*7+D6

j'aurais besoin de calculer un délai. En E c'est une liste déroulante contenant les mots Bois, couleur, blanc, cintrage et bicolore. Chacun d'eux correspond a un délai de livraison en semaine d'ou le 7 dans la formule.

sur vba apres utilisation de l'aide j'ai fait cela mais ca marche pas (en mm tps vu mon niveau je m'y attendais)


Private Sub Workshee1_Calculate()
If Target.Column <> 7 Or Target.Row < 6 Or Target.Cells.Count > 1 Then
'si la colonne <>7 (C) ou la ligne <6 ou la sélection fait plus d'1 cellule

Private Const Bois As Integer = 4
Private Const Couleur As Integer = 3
Private Const Cintrage As Integer = 6
Private Const bicolore As Integer = 4
Private Const Blanc As Integer = 2

Else
On Error GoTo End
End If
End Sub
blux
Messages postés
23913
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
13 janvier 2020
2 729
Merci de poster un nouveau message, celui-ci est hosr sujet par rapport à la demande initiale.
un truc simple qui m'a dépanné.
dans une cellule écrire:
=cnum(A1)
ou A1 désigne la cellule à convertir
> moi03
merci pour ton super tuyau blux!
Messages postés
23913
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
13 janvier 2020
2 729
Salut,

dans l'aide excel sur les chaines de caractères, on trouve la fonction CNUM, elle pourra sans doute te convenir...

la liste des fonctions s'obtient en cherchant "A propos des fonctions de texte" dans l'aide

A+ Blux
 "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"
Merci à toi Blux mais ca ne m'aide pas vraiement car CNUM n'est pas une fonction VBA mais simplement une fonction utilisable dans excel !
Jte remercie quand même ;o)
Messages postés
104
Date d'inscription
mercredi 10 avril 2002
Statut
Membre
Dernière intervention
8 juin 2008
23
tu peux te procurer un livre sur VB ou bien aller chercher la librairie MSDN sur le net ( légalement bien sure !)

Ne prend pas ton temps car le temps ne t'attend pas.