doublons x 2

B

boubou52

Guest
Bonjour,

je voudrais une macro qui me signale uniquement dans le cas où on trouve le doublon à la fois dans la colonne A et B. voir exemple ci dessous . Merci

Colonne A Colonne B Doublon
test1 essai1
test2 essai2
test3 essai3
test4 essai4
test5 essai5
test1 essai4
test1 essai1 OK
 

_Thierry

XLDnaute Barbatruc
Repose en paix
Bonjour oubou, le Forum

Je vois une solution VBA comme ceci, (je pense que par Formule, notre Spécialiste, Monique pour ne pas la citer te trouveras plus pratique)

Mais donc voici un Algo VBA pour faire ceci :

Code:
Option Explicit
Sub TheTwiceTracker()
Dim TheRange As Range, Cell As Range
Dim TheString As String
Dim i As Integer


    With Sheets('TaFeuille')
        Set TheRange = .Range('A1:A' & .Range('A1000').End(xlUp).Row)
            For Each Cell In TheRange
            TheString = Cell & Cell.Offset(0, 1)
                    For i = 1 To TheRange.Rows.Count
                        If Not Cell.Offset(0, 2) = 'OK' Then
                            If TheString = .Range('A' & i) & .Range('B' & i) Then
                                If Not i = Cell.Row Then
                                    .Range('C' & i) = 'OK'
                                End If
                            End If
                        End If
                    Next i
            Next Cell
    End With
End Sub

Bon Appétit
@+Thierry
 

_Thierry

XLDnaute Barbatruc
Repose en paix
Aie aie aie

Dur Dur de faire les identations sur ce Forum ...

Bon voici le code tel quel :

Sub TheTwiceTracker()
Dim TheRange As Range, Cell As Range
Dim TheString As String
Dim i As Integer


With Sheets('TaFeuille')
Set TheRange = .Range('A1:A' & .Range('A1000').End(xlUp).Row)
For Each Cell In TheRange
TheString = Cell & Cell.Offset(0, 1)
For i = 1 To TheRange.Rows.Count
If Not Cell.Offset(0, 2) = 'OK' Then
If TheString = .Range('A' & i) & .Range('B' & i) Then
If Not i = Cell.Row Then
.Range('C' & i) = 'OK'
End If
End If
End If
Next i
Next Cell
End With
End Sub

Re Bon App
@+Thierry
 

Gérard DEZAMIS

XLDnaute Accro
Bonjour à Toutes et Tous
Boubou et l'es @+T !

Diable que c'est beau maintenant mais il faut s'habituer

En attendant Monique
une essai avec

=SI(((NB.SI(Plage1;A1)>1)*(NB.SI(Plage2;B1)>1))=1;'OK';'')

Les plages de cellules sont nommées (Plage 1 et Plage2.. pas très original mais ....) et ces plages commencent en A1 et B1 donc la formule à 'tirer' ensuite est à mettre en C1 .... ou ailleurs

@+ GD :evil:
 

_Thierry

XLDnaute Barbatruc
Repose en paix
Ben écoute Boubou,

Pour moi en VBA c'est très simple, mais en Formule c'est très compliqué !

... et comme j'ai dit, tu auras peut-être la chance d'avoir un ou une contributrice qui te donneras la même chose en Formule.... Mais peut-être faudrait-il que tu soies un poil plus zen, car mine de rien j'ai cherché une solution pour toi...

Bon Appétit
@+Thierry
 

Monique

Nous a quitté
Repose en paix
Bonjour,

Un petit coup de SommeProd
Les données démarrent en A2 et en B2
En C2 :
=SI(SOMMEPROD((A$2:A2&B$2:B2=A2&B2)*1)>1;'OK';'')

Conditionnel (si les colonnes A ou B peuvent être vides) :
=SI(OU(SOMMEPROD((A$2:A2&B$2:B2=A2&B2)*1)
 
B

boubou52

Guest
Merci pour le temps que t'as pris et désolée pour la réponse brusque mais je ne connais que les formules et le VBA c du chinois pour moi...mais je pense que t'as contribution servira à d'autres ou me servira plus tard quand je serai moins bete ;-))
 

Monique

Nous a quitté
Repose en paix
Re,

Regarde le fichier joint et dis ce qui ne va pas. [file name=DoublonsBoubou.zip size=3157]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/DoublonsBoubou.zip[/file]
 

Pièces jointes

  • DoublonsBoubou.zip
    3.1 KB · Affichages: 65

Discussions similaires

Statistiques des forums

Discussions
314 017
Messages
2 104 579
Membres
109 081
dernier inscrit
Vio21