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 :

Valider toules les cellules d'une colonne


Sujet :

Macros et VBA Excel

  1. #1
    Membre régulier
    Inscrit en
    Mars 2008
    Messages
    257
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 257
    Points : 111
    Points
    111
    Par défaut Valider toules les cellules d'une colonne
    Bonjour a tous et a toutes,

    je possede une feuille avec plusieurs colonnes. Je desire simplement verifier que toutes les cellules de la colonne 3 soit des chiffres (entier ou double) mais pas d'autres caracteres, sinon j'affiche un message d'erreur

    P.S : le formatage de mes cellules sont tous monetaires tel que $555.99, $333.56, etc...

    Pouvez-vous me donner une piste svp ?

    Merci

  2. #2
    Membre régulier Avatar de DidierLoche
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    84
    Détails du profil
    Informations personnelles :
    Âge : 58
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 84
    Points : 105
    Points
    105
    Par défaut
    Bonsoir,

    Il te suffit de balayer les cellules de colonne C et de tester si c'est un nombre avec IsNumber, par exemple comme cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Sub verif()
    ligne = 1
    Do While Cells(ligne, 3) <> ""
        If Application.WorksheetFunction.IsNumber(Cells(ligne, 3)) = False Then
            MsgBox "Erreur à la ligne " & ligne
            Rows(ligne).Select
        End If
        ligne = ligne + 1
    Loop
    End Sub
    Didier

  3. #3
    Membre régulier
    Inscrit en
    Mars 2008
    Messages
    257
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 257
    Points : 111
    Points
    111
    Par défaut
    Merci Didier. Je test et je te dis.

  4. #4
    Membre régulier
    Inscrit en
    Mars 2008
    Messages
    257
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 257
    Points : 111
    Points
    111
    Par défaut
    Bonjour Didier,

    la procedure fonctionne bien sauf lorsqu'il y a une cellule vide dans la colonne. Il repere bien les cellules non numeriques mais des qu<il y a une cellule vide, il arrete et ne continue pas la validation des autres cellules en dessous. Ya t-il un moyen de dire a la macro de parcourir toute la colonne meme lorsqu'il voit une celulle vide (il faut simplement ne pas en tenir compte)

    merci pour l'aide

  5. #5
    Membre émérite Avatar de Godzestla
    Homme Profil pro
    Chercheur de bonheur
    Inscrit en
    Août 2007
    Messages
    2 392
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de bonheur
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2007
    Messages : 2 392
    Points : 2 985
    Points
    2 985
    Par défaut
    Bonsoir Mimosa,

    le procédure de didier est faite pour s'arrêter à la première cellule vide, ce qu'elle fait apparement bien.

    Si tu veux balayer la colonne J jusqu'en bas, ou jusqu'à trouver une erreur, il faut limiter la boucle autrement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    Sub verif()
    For Each cell In Range(Range("C65536").End(xlUp), Range("C2"))
        ligne = cell.Row
        If Application.WorksheetFunction.IsNumber(cell) = False And cell <> "" Then
            MsgBox "Erreur à la ligne " & ligne
            Exit For
        End If
    Next cell
    End Sub
    Dans ce code, je suppose que en C1 il y a le titre de la colonne.
    (\ _ /) Cordialement G@dz
    (='.'=)

    (")-(") Vous avez des neurones. Sollicitez-les. . Si vous êtes aidé, pensez à Voter.

  6. #6
    Membre régulier
    Inscrit en
    Mars 2008
    Messages
    257
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 257
    Points : 111
    Points
    111
    Par défaut
    Merci beaucoup Godzestla. Ca marches !!!

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

Discussions similaires

  1. Ajouter * dans toutes les cellules d'une colonne
    Par islyoung2 dans le forum Excel
    Réponses: 4
    Dernier message: 04/02/2009, 11h13
  2. récupéré les cellules d'une colonne d'une listview
    Par mrrenard dans le forum Windows Presentation Foundation
    Réponses: 2
    Dernier message: 29/05/2008, 10h46
  3. Réponses: 2
    Dernier message: 20/02/2008, 18h08
  4. Personnaliser les cellules d'une colonne ou lignes
    Par opensource dans le forum AWT/Swing
    Réponses: 2
    Dernier message: 25/12/2007, 15h39
  5. supprimer l'espace entre les cellules d'une colonne d'un tableau
    Par 123quatre dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 06/09/2007, 10h52

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