MACRO SUPPRIME LETTRES

Résolu/Fermé
Pisounard Messages postés 8 Date d'inscription dimanche 22 novembre 2009 Statut Membre Dernière intervention 15 décembre 2009 - 22 nov. 2009 à 14:12
Pisounard Messages postés 8 Date d'inscription dimanche 22 novembre 2009 Statut Membre Dernière intervention 15 décembre 2009 - 24 nov. 2009 à 21:27
Bonjour à tous,

Je suis à la recherche d'une macro qui pourrait supprimer les lettres des cellules, afin de pouvoir ensuite les trier par ordre croissant .

La colonne contient des cellules avec des chiffres et des lettres.

Par exemple : 14dc ; 2698FGY ou bien xc286

Malgré mes recherches, je n'ai rien trouvé...

Si quelqu'un à une petite idée... ?
Merci pour votre aide.
A voir également:

7 réponses

michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
22 nov. 2009 à 15:55
bojour,

avec une fonction personnalisée:

Function extrait_nbre(ByRef texto As String) As Long
    Dim reg As Object
    Dim extraction As Object
  
    Set reg = CreateObject("vbscript.regexp")
    reg.Global = True
    reg.Pattern = "(\d?\d?\d)"
   
    Set extraction = reg.Execute(texto)
    For Each digit In extraction
        extrait_nbre = extrait_nbre & (digit.Value)
    Next digit
End Function


2
eriiic Messages postés 24571 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 8 mai 2024 7 216
23 nov. 2009 à 23:28
Bonsoir,

La fonction de michel fonctionne bien.
En fait tu appelles une fonction personnalisée de la même façon qu'une fonction native d'excel.
Donc dans ton exemple :
=extrait_nbre(A2)

Tu peux aussi utiliser 'insérer / fonction...' et choisir la catégorie 'personnalisée'.
Elle doit y être présente si elle a bien été saisie dans un module (à-priori c'est le cas)

eric
1
Pisounard Messages postés 8 Date d'inscription dimanche 22 novembre 2009 Statut Membre Dernière intervention 15 décembre 2009 8
23 nov. 2009 à 13:39
Bonjour,
Merci pour votre réponse je vais essayer.
Merci
0
Pisounard Messages postés 8 Date d'inscription dimanche 22 novembre 2009 Statut Membre Dernière intervention 15 décembre 2009 8
23 nov. 2009 à 21:11
Bonsoir,

J'ai essayé mais ça ne marche pas, j'ai installé la fonction mais le résultat est nul : #NOM?

Pour résumer :

J'ai ma série de lettre et de chiffre en colonne A (ex 105ert en Cellule A2)

en colonne B je met la fonction : ='Fichiertest.xls'!Module1.extrait_nbre()+A2


Une idée ?
Merci Beaucoup
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
24 nov. 2009 à 09:47
merci Eric
0
Pisounard Messages postés 8 Date d'inscription dimanche 22 novembre 2009 Statut Membre Dernière intervention 15 décembre 2009 8
24 nov. 2009 à 21:26
.../....
0
Pisounard Messages postés 8 Date d'inscription dimanche 22 novembre 2009 Statut Membre Dernière intervention 15 décembre 2009 8
24 nov. 2009 à 21:27
Effectivement ça marche bien, j'aurais mieux fait d'aller me coucher hier soir ......
Merci à tous les deux.
0