Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

supprimer des doublons dans un tableau

8 réponses
Avatar
yansec
Bonjour à tous.

J'ai un tableau avec en colonne A des references
en colonne B des valeurs
en colonne C , soit des valeurs, soit une
case vide

dans la colonne A , il arrive de trouver la même reference sur 2 lignes
distinctes

je recherche donc une macro qui me supprime la ligne en double mais que si
la case de la colonne C correspondante est vide

merci

8 réponses

Avatar
isabelle
bonjour yansec,

Sub Macro1()
For Each c In Range("A1:A" & Range("A65536").End(xlUp).Row)
If Range("C" & c.Row) = 0 Then Rows(c.Row).Delete Shift:=xlUp
Next
End Sub

isabelle


Bonjour à tous.

J'ai un tableau avec en colonne A des references
en colonne B des valeurs
en colonne C , soit des valeurs, soit une
case vide

dans la colonne A , il arrive de trouver la même reference sur 2 lignes
distinctes

je recherche donc une macro qui me supprime la ligne en double mais que si
la case de la colonne C correspondante est vide

merci




Avatar
michdenis
Tu utilises le filtre élaboré :

Tes colonnes doivent obligatoirement avoir une étiquette de colonne.

Zone de critère :

X1 = Champ de ta colonne C
X2 =
Tu places le curseur dans une cellule de la plage de données
Tu appelles la commande Données / filtre / filtre élaboré

Tu utilises la plage X1:X2 comme zone de critère
Dans le coin inférieur gauche de la fenêtre, tu coches "sans doublons"

Tu sélectionnes les lignes résultant de ton filtre
à partir de la barre de menu Édition / atteindre / cellules / visibles
Tu supprimes : Édition / supprimer

Voilà.




"yansec" a écrit dans le message de news:
e$
Bonjour à tous.

J'ai un tableau avec en colonne A des references
en colonne B des valeurs
en colonne C , soit des valeurs, soit une
case vide

dans la colonne A , il arrive de trouver la même reference sur 2 lignes
distinctes

je recherche donc une macro qui me supprime la ligne en double mais que si
la case de la colonne C correspondante est vide

merci
Avatar
michdenis
D'après ce que je comprends de la question :

Si C est vide mais si cette A n'est pas un doublon,
elle veut conserver cette ligne !
Est-ce vraiment ce dont fait ta procédure ?
;-)


"isabelle" a écrit dans le message de news: u41HC$
bonjour yansec,

Sub Macro1()
For Each c In Range("A1:A" & Range("A65536").End(xlUp).Row)
If Range("C" & c.Row) = 0 Then Rows(c.Row).Delete Shift:=xlUp
Next
End Sub

isabelle


Bonjour à tous.

J'ai un tableau avec en colonne A des references
en colonne B des valeurs
en colonne C , soit des valeurs, soit une
case vide

dans la colonne A , il arrive de trouver la même reference sur 2 lignes
distinctes

je recherche donc une macro qui me supprime la ligne en double mais que si
la case de la colonne C correspondante est vide

merci




Avatar
isabelle
oups petit oublie, une chance que tu suis les débats denis,

Sub Macro1()
For Each c In Range("A1:A" & Range("A65536").End(xlUp).Row)
If Application.CountIf(Range("A:A"), c) > 1 Then
If Range("C" & c.Row) = 0 Then Rows(c.Row).Delete Shift:=xlUp
End If
Next
End Sub

isabelle



D'après ce que je comprends de la question :

Si C est vide mais si cette A n'est pas un doublon,
elle veut conserver cette ligne !
Est-ce vraiment ce dont fait ta procédure ?
;-)


"isabelle" a écrit dans le message de news: u41HC$
bonjour yansec,

Sub Macro1()
For Each c In Range("A1:A" & Range("A65536").End(xlUp).Row)
If Range("C" & c.Row) = 0 Then Rows(c.Row).Delete Shift:=xlUp
Next
End Sub

isabelle



Bonjour à tous.

J'ai un tableau avec en colonne A des references
en colonne B des valeurs
en colonne C , soit des valeurs, soit une
case vide

dans la colonne A , il arrive de trouver la même reference sur 2 lignes
distinctes

je recherche donc une macro qui me supprime la ligne en double mais que si
la case de la colonne C correspondante est vide

merci









Avatar
yansec
Re-
je viens de tester ta macro (modifiée) sur un fichier test
apparemment , c'est pil-poil
merci beacoup Isabelle
demain je fais le test grandeur nature


"isabelle" a écrit dans le message de news:
%
oups petit oublie, une chance que tu suis les débats denis,

Sub Macro1()
For Each c In Range("A1:A" & Range("A65536").End(xlUp).Row)
If Application.CountIf(Range("A:A"), c) > 1 Then
If Range("C" & c.Row) = 0 Then Rows(c.Row).Delete Shift:=xlUp
End If
Next
End Sub

isabelle



D'après ce que je comprends de la question :

Si C est vide mais si cette A n'est pas un doublon,
elle veut conserver cette ligne !
Est-ce vraiment ce dont fait ta procédure ?
;-)


"isabelle" a écrit dans le message de news:
u41HC$
bonjour yansec,

Sub Macro1()
For Each c In Range("A1:A" & Range("A65536").End(xlUp).Row)
If Range("C" & c.Row) = 0 Then Rows(c.Row).Delete Shift:=xlUp
Next
End Sub

isabelle



Bonjour à tous.

J'ai un tableau avec en colonne A des references
en colonne B des valeurs
en colonne C , soit des valeurs, soit une
case vide

dans la colonne A , il arrive de trouver la même reference sur 2 lignes
distinctes

je recherche donc une macro qui me supprime la ligne en double mais que
si
la case de la colonne C correspondante est vide

merci










Avatar
michdenis
| oups petit oublie, une chance que tu suis les débats denis,

Ce n'est pas parce que l'on suit... que l'on comprend la question !!!

;-))
Avatar
yansec
Si, si
je crois que t'avais bien compris mon probleme
merci
"michdenis" a écrit dans le message de news:
%


| oups petit oublie, une chance que tu suis les débats denis,

Ce n'est pas parce que l'on suit... que l'on comprend la question !!!

;-))




Avatar
michdenis
| je crois que t'avais bien compris mon probleme

Le résultat de la procédure d'isabelle et la mienne ne donneront
pas vraiment le même résultat..

ce qui compte c'est que tu as trouvé une solution qui te convienne.