IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

macro (et/ou) fonction permettant de supprimer tout caractère n'étant pas un chiffr


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 73
    Points : 38
    Points
    38
    Par défaut macro (et/ou) fonction permettant de supprimer tout caractère n'étant pas un chiffr
    bonjour à tous,

    Je cherche à créer une macro (et/ou) fonction permettant de supprimer, au sein d'une cellule tout caractère qui ne serait pas un chiffre:

    Exemple:

    nous avons dans la cellule A1 = jlls456s-* f57s8f

    Après action de la macro nous aurions: 456578

    Etant débutant, je ne sais pas trop par où commencer... pensez vous que c'est réalisable?

    merci d'avance pour votre aide.

  2. #2
    Membre éclairé

    Profil pro
    Inscrit en
    Mai 2007
    Messages
    514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 514
    Points : 824
    Points
    824
    Par défaut
    Bonsoir,

    Le code est à insérer dans un module standard.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Function GarderChiffres(Chaine As String) As String
        Dim i As Long, t As String
        For i = 1 To Len(Chaine)
            t = Mid$(Chaine, i, 1)
            If Asc(t) > 47 And Asc(t) < 58 Then GarderChiffres = GarderChiffres & t
        Next
    End Function
    Tu peux utiliser la fonction dans une cellule en tapant simplement:
    =garderchiffres(A1)

    Cordialement,

    Tirex28/

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 73
    Points : 38
    Points
    38
    Par défaut
    merci beaucoup ça fonctionne au top.

    PS: j'ai rajouté la possibilité de détecter les virgules.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Function GarderChiffres(Chaine As String) As String
        Dim i As Long, t As String
        For i = 1 To Len(Chaine)
            t = Mid$(Chaine, i, 1)
            If Asc(t) > 47 And Asc(t) < 58 Or t = "," Then GarderChiffres = GarderChiffres & t
        Next
    End Function

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. macro permettant de supprimer des lignes données
    Par OLIV420 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 25/08/2010, 17h40
  2. Macro permettant de masquer toutes les lignes vides d'une feuille
    Par edouardmartin dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 19/05/2010, 17h34
  3. Réponses: 0
    Dernier message: 14/05/2010, 23h21
  4. Réponses: 2
    Dernier message: 07/06/2007, 17h44
  5. Fonction permettant de remplacer des caractères
    Par PrinceMaster77 dans le forum ASP
    Réponses: 3
    Dernier message: 06/09/2004, 15h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo