extraction de nombre

  • Initiateur de la discussion Initiateur de la discussion JY
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

J

JY

Guest
Bonjour,

Avec Excel 2000, je cherche à extraire un nombre d'une chaine de caractères Ex.: A1='123 rue de la rue' mais on peu avoir en A2 '1256 rue de la rue'

Merci!

mailto:gestion@charlevoix.net
 
Salut JY
bonsoir Monique
bonsoir Marc77

en pièce jointe une version VBA

je pense qu'il existe une fonction qui extrait directement les valeurs numériques d'une chaine de caractères mais je ne la retrouve pas [file name=extraction_20050819212821.zip size=7295]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/extraction_20050819212821.zip[/file]
 

Pièces jointes

re
une autre version du code avec commentaires

Code:
Sub transfert2()
Dim mavar As String
Dim cel As Range
'pour chaque cellule de la plage 'A2:A'& dernière ligne occupée _
en remontant depuis la dernière cellule de la colonne A
For Each cel In Range('A2:A' & Range('A65536').End(xlUp).Row)
'mavar est égale à extraire de la valeur de la cellule _
depuis le premier caractère,le nombre suivant de caractère _
InStr(1, cel.Value, Chr(32)) - 1 on recherche dans la chaine(cel.value) _
ou se trouve le premier espace ici en A2 = 3 on ote 1 pour obtenir _
le nombre de caractères à oter Ici 2 on a donc 12

mavar = Mid(cel.Value, 1, InStr(1, cel.Value, Chr(32)) - 1)

'on sélectionne la cellule a coté et on colle la Variable
cel.Offset(0, 1) = mavar
Next

End Sub

bon Week End
 
Bonsoir JY, Monique, Marc77, ChTi160,   le Forum.

Juste en passant et pour mon ami Jean-Marie (ChTi160), si la valeur numérique est toujours au début de la chaîne de caractères (comme dans les exemples cités par JY), en VBA, à mon avis le plus simple serait d'utiliser la fonction Val().
Si A1='123 rue de la rue'
Val(Range('A1').Value) sera égale à 123
Cordialement,
 
Bonjour le Fil
Salut Didier
ah tu es bon toi ,moi je rentre de quelques jours de vacances et il m'a était impossible de retrouver cette fonction (VAL)
je pense qu'il existe une fonction qui extrait directement les valeurs numériques d'une chaine de
caractères mais je ne la retrouve pas
Merci à toi et bon WeekEnd
Arffff
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
7
Affichages
678
Réponses
5
Affichages
209
Réponses
16
Affichages
583
Réponses
4
Affichages
225
Retour