Récupérer une partie du contenu d'une cellule dans une colonne

Fermé
Joss - 23 oct. 2013 à 16:39
 joss - 23 oct. 2013 à 17:18
Bonjour,
Bonjour,

Débutant en VBA, je suis face à un exercice de taille.
je cherche à relever une partie de chaque cellule d'une colonne, la partie m'intéressant.
Je m'explique : mon fichier Xcel possède une colomne commentaires.
Chaque cellule de cette colonne possède un format différent, mais chaque cellule possède une partie m'intéressant que je cherche à relever.
Exemple :

En C1 : PIN=48 eh=TAGatmeth:e
En C2 : PIN 56 TAG/TAGETH790

Je cherche alors à relever le n° de PIN. Problème : il n'est pas toujours annoncé de la même manière... Exemple : PIN=48 ; PIN VID=48; PIN 48; VID 48... On retrouve un nombre de cas assez conséquent.

L'idée serait de relever seulement le n° de VLAN, ce qui me semble compliqué : les cellules contiennent d'autres chiffres et lettres et l'identification du n° de VLAN n'est pas commune à toutes les cellules.

Des idées? J'en arrive personnellement au stade migraine...

Merci d'avance,

Cordialement,



A voir également:

1 réponse

Zoul67 Messages postés 1959 Date d'inscription lundi 3 mai 2010 Statut Membre Dernière intervention 30 janvier 2023 149
23 oct. 2013 à 16:49
Bonjour,

C'est toujours le premier nombre de ta cellule qui t'intéresse ?

PS : pourquoi c'est toujours le bazar quand il s'agit de télécom ?

A+
0
Zoul67 Messages postés 1959 Date d'inscription lundi 3 mai 2010 Statut Membre Dernière intervention 30 janvier 2023 149
23 oct. 2013 à 17:03
Si oui =>
Function extraction(s As String)
extraction = ""
premier_nombre = False
For i = 1 To Len(s)
If IsNumeric(Mid(s, i, 1)) Then
extraction = extraction & Mid(s, i, 1)
premier_nombre = True
ElseIf (Not (IsNumeric(Mid(s, i, 1))) And premier_nombre = True) Then
Exit For
End If
Next i
End Function
0
Merci Zoul67 pour ta réponse rapide. Ton code devrait me permettre de récupérer une bonne partie de mes cas, je vais vérifier si c'est bien toujours le premier nombre (mon fichier fait une taille...) et tester ta solution.
A+ et merci
0