Empecher un doublon
Résolu/Fermé
rodger85230
Messages postés
9
Date d'inscription
lundi 20 mai 2019
Statut
Membre
Dernière intervention
11 juin 2021
-
Modifié le 20 mai 2019 à 14:17
rodger85230 Messages postés 9 Date d'inscription lundi 20 mai 2019 Statut Membre Dernière intervention 11 juin 2021 - 6 juin 2019 à 19:08
rodger85230 Messages postés 9 Date d'inscription lundi 20 mai 2019 Statut Membre Dernière intervention 11 juin 2021 - 6 juin 2019 à 19:08
A voir également:
- Empecher un doublon
- Supprimer doublon excel - Guide
- Logiciel doublon photo - Guide
- Tirage aléatoire excel sans doublon ✓ - Forum Excel
- Un bloqueur de publicité empêche la lecture. veuillez le désactiver pour démarrer la vidéo - Astuces et Solutions
- Excel recherche doublon entre 2 feuilles ✓ - Forum Excel
1 réponse
cs_Le Pivert
Messages postés
7883
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
18 mars 2023
724
Modifié le 20 mai 2019 à 15:40
Modifié le 20 mai 2019 à 15:40
Bonjour,
comme ceci:
comme ceci:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address <> "$D$1" Or Target.Count > 1 Then Exit Sub
If Target = "" Then Exit Sub 'pour éviter des appels successifs
Dim Dli As Long
Dim derniereLigne As Long
Dli = Worksheets("Feuil1").Range("A" & Rows.Count).End(xlUp).Row
derniereLigne = Worksheets("Feuil2").Range("A" & Rows.Count).End(xlUp).Row
If Application.CountIf(Range("A1:A" & Dli), Target) > 0 Or Application.CountIf(Worksheets("Feuil2").Range("A1:A" & derniereLigne), Target) > 0 Then
MsgBox Target & " est déjà dans la liste", vbInformation, "pas accepté :"
Target = ""
End If
Target.Select
End Sub
20 mai 2019 à 17:15
Votre réponse est la bonne , mais ma question n’était pas entière
serait'il possible que les dates qui s'inscrivent en feuil1 colonne A se retrouvent également sur la feuil2
merci d'avance
20 mai 2019 à 18:10
Option Explicit Private Sub Worksheet_Change(ByVal Target As Range) Dim Dli As Long Dim derniereLigne As Long If Not Intersect(Target, Range("A:A")) Is Nothing Then If Target = "" Then Exit Sub 'pour éviter des appels successifs Worksheets("Feuil2").Range("A" & Target.Row) = Worksheets("Feuil1").Range("A" & Target.Row) Worksheets("Feuil2").Range("A" & Target.Row).NumberFormat = "m/d/yyyy" 'a adapter le format End If If Target.Address <> "$D$1" Or Target.Count > 1 Then Exit Sub Dli = Worksheets("Feuil1").Range("A" & Rows.Count).End(xlUp).Row derniereLigne = Worksheets("Feuil2").Range("A" & Rows.Count).End(xlUp).Row If Application.CountIf(Range("A1:A" & Dli), Target) > 0 Or Application.CountIf(Worksheets("Feuil2").Range("A1:A" & derniereLigne), Target) > 0 Then MsgBox Target & " est déjà dans la liste", vbInformation, "pas accepté :" Target = "" End If Target.Select End Sub@+ Le Pivert
22 mai 2019 à 19:07
en fait je vais reprendre la première macro mais maintenant j'ai un autre problème c'est quand je lance une macro pour copier les données même si la date existe dans "histotest" colonne A, la macro (copie) me les copies . serait'il possible de rajouter dans cette macro de (copie) qu'il regarde si la date mise en colonne A "Donnée" est présente dans la colonne A dans "histotest" si oui avoir un message et stopper la macro ,si non que la macro continu pour la copie , voici la macro
Merci d'avance
6 juin 2019 à 19:08
ce que vous m'avez donné marche très bien
je marque comme résolue