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 :

Interdire doublons dans deux colonnes [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Septembre 2008
    Messages
    629
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 629
    Par défaut Interdire doublons dans deux colonnes
    Bonjour,

    En reprenant le bon code de mercatoq comment peut on interdire les doublons aux colonnes "C et D".

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    Private Sub Worksheet_Change(ByVal Target As Range)
    Dim c As Range, Plage As Range
     
    If Target.Column = 1 And Target.Row > 5 And Target.Count = 1 Then
        Target.NumberFormat = "0##"" ""##"" ""##"" ""##"
        Set Plage = Range("A6:A" & [A65000].End(xlUp).Row)
        If Application.CountIf(Plage, Target.Value) > 1 Then
            Set c = Range("A:A").Find(Target.Text, LookIn:=xlValues, lookat:=xlWhole, After:=Target.Offset(1, 0), SearchDirection:=xlNext)
            MsgBox "Doublon en ligne " & c.Row
            Set c = Nothing
            Application.EnableEvents = False
            Target.Clear
            Application.EnableEvents = True
        End If
        Set Plage = Nothing
    End If
    End Sub
    D'avance un grand merci

    @+

    Max

  2. #2
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Par défaut
    Bonjour,

    Le code suivant interdit les doublons pour les colonnes C ou D:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    Private Sub Worksheet_Change(ByVal Target As Range)
    Dim c As Range, Plage As Range
     
    If (Target.Column = 3 Or Target.Column = 4) And Target.Row > 5 And Target.Count = 1 Then
        Target.NumberFormat = "0##"" ""##"" ""##"" ""##"
        Set Plage = Range(Cells(6, Target.Column), Cells(65000, Target.Column).End(xlUp))
        If Application.CountIf(Plage, Target.Value) > 1 Then
            Set c = Columns(Target.Column).Find(Target.Text, LookIn:=xlValues, lookat:=xlWhole, After:=Target.Offset(1, 0), SearchDirection:=xlNext)
            MsgBox "Doublon en ligne " & c.Row
            Set c = Nothing
            Application.EnableEvents = False
            Target.Clear
            Application.EnableEvents = True
        End If
        Set Plage = Nothing
    End If
    End Sub

  3. #3
    Membre éclairé
    Inscrit en
    Septembre 2008
    Messages
    629
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 629
    Par défaut
    Bonjour Daniel

    Je te remercie et te souhaite une bonne soirée

    @+
    Max

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

Discussions similaires

  1. [Débutant] doublon sur deux colonnes
    Par mephilith dans le forum Langage SQL
    Réponses: 8
    Dernier message: 28/01/2008, 19h28
  2. Réponses: 6
    Dernier message: 23/10/2007, 15h01
  3. Réponses: 6
    Dernier message: 29/08/2007, 06h49
  4. Selection si doublons dans une colonne
    Par PhilMarcellus dans le forum Requêtes
    Réponses: 3
    Dernier message: 19/05/2007, 12h21
  5. [EXCEL] Mise en évidence des doublons dans une colonne
    Par dacid dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 30/10/2006, 19h14

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