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 :

Msgbox détection doublon sans détection des lignes vides [XL-2013]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2011
    Messages
    94
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Août 2011
    Messages : 94
    Par défaut Msgbox détection doublon sans détection des lignes vides
    Bonjour,

    Je me tourne vers le forum une nouvelle fois pour un problème que je cherche à résoudre après plusieurs recherches infructueuses :
    Dans une macro, je cherche à détecter les doublons afin d'alerter l'utilisateur. Le code suivant fonctionne mais je souhaiterais qu'il ne prenne pas en compte les lignes vides, qui ressortent donc comme des doublons avec ce code.

    Merci par avance pour votre aide.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Set r = Range("C9:C84")
    ' Spécifie la plage exacte à couvrir
    For n = 1 To r.Rows.Count
    If r.Cells(n, 1) = r.Cells(n + 1, 1) Then
    If MsgBox("Attention, il n'est pas possible deux sections d'analyse avec le même code. Merci de vérifier votre saisie", vbCritical, Attention) = vbOK Then
    End If
                   Exit Sub
        End If
        Exit For
    Next n

  2. #2
    Expert confirmé Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Par défaut
    Bonjour,

    ou est placée ta macro ?
    parce que si elle est placée dans un événement "Change", tu dois pouvoir compter directement le nombre de données égale avec "NB.SI" (CountIf) et provoquer le message si la valeur est supérieure à 1
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur :resolu: si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  3. #3
    Membre Expert Avatar de jerome.vaussenat
    Homme Profil pro
    Formateur Bureautique
    Inscrit en
    Janvier 2011
    Messages
    1 629
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Formateur Bureautique
    Secteur : Enseignement

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 629
    Par défaut
    Salut,

    Tu n'est pas obligé de coder pour faire ce genre de chose, tu peux utiliser la validation des données.
    Tu sélectionnes ta colonne. La A sauf erreur.
    Dans l'onglet Données, Validation des données.
    Dans la boîte de dialogue, tu as une liste Autoriser, tu choisis personnaliser.
    Dans la zone formule, tu mets
    Dans l'onglet allerte d'erreur tu peux personnaliser le message affiché par Excel.
    Pour en savoir plus sur le sujet, voici un peu de lecture
    http://boisgontierjacques.free.fr/pa...n.htm#Doublons
    En espérant que cela corresponde à ce que tu veux faire.

    Mon point de vue, moins on code et mieux on se porte. Ce n'est qu'un point de vue, mais c'est le mien ...

  4. #4
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2011
    Messages
    94
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Août 2011
    Messages : 94
    Par défaut
    Merci pour ces solutions (je connaissais), mais il s'agit de champ avec des formules. L'utilisateur doit pouvoir choisir deux valeurs en doubles, mais il doit ensuite les individualiser. S'il oublie de les individualiser mais qu'il lance la macro, c'est à ce moment là que je souhaiterai avoir le message d'erreur.
    Merci pour votre aide

  5. #5
    Membre éprouvé
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2015
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2015
    Messages : 72
    Par défaut
    Dans ce cas là peut-être comme ceci?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If r.Cells(n, 1) = r.Cells(n + 1, 1) And r.Cells(n,1) <> "" Then
    DeathZarakai.

  6. #6
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2011
    Messages
    94
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Août 2011
    Messages : 94
    Par défaut
    ça marche parfaitement!

    Merci beaucoup!

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

Discussions similaires

  1. KSH: Supprimer des lignes vides (sans espaces ni tab) en fin de fichier text
    Par SmileAndFly dans le forum Shell et commandes GNU
    Réponses: 4
    Dernier message: 31/07/2008, 20h47
  2. Masquer des lignes vides
    Par gg9595 dans le forum Webi
    Réponses: 11
    Dernier message: 28/06/2007, 12h03
  3. Réponses: 4
    Dernier message: 04/06/2007, 15h28
  4. Traitement des lignes [suppression des lignes vides]
    Par turbo_chess dans le forum Linux
    Réponses: 4
    Dernier message: 22/03/2007, 09h16
  5. Richtextbox qui ajoute des lignes vides
    Par Seto dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 19/09/2006, 14h10

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