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

Effacer ligne en doublon

7 réponses
Avatar
Tibert
Bonjour =E0 tous ;
Pourrais ton me proposer une macro pour effacer les lignes en doublons
sur une plage de (A5 :E50) avec comme crit=E8re la colonne (B) =E0 partir
de (B5)
Je tiens =E0 effacer les lignes mais pas les supprimer.
Merci =E0 vous et bonne journ=E9e.

7 réponses

Avatar
michel ou sam
Bonjour,
qu'entends tu par effacer mais pas supprimer ?
- la ligne en question doit être vide ?
- la ligne en question n'apparaît pas, comme avec un filtre ?
- une simple mise en couleur suffirait elle ?

La macro est elle nécessaire ?

Michel

"Tibert" a écrit dans le message de news:

Bonjour à tous ;
Pourrais ton me proposer une macro pour effacer les lignes en doublons
sur une plage de (A5 :E50) avec comme critère la colonne (B) à partir
de (B5)
Je tiens à effacer les lignes mais pas les supprimer.
Merci à vous et bonne journée.
Avatar
Tibert
Bonjour "michel ou sam"

Je souhaiterais effacer le contenu de la ligne, mais pas effacer en
supprimant la ligne que cela n’altère pas mon tableau, parce que
derrière cette macro je ferrais suivre une autre macro pour trier
Merci.

On 12 août, 10:44, "michel ou sam" wrote:
Bonjour,
qu'entends tu par effacer mais pas supprimer ?
- la ligne en question doit être vide ?
- la ligne en question n'apparaît pas, comme avec un filtre ?
- une simple mise en couleur suffirait elle ?

La macro est elle nécessaire ?

Michel

"Tibert" a écrit dans le message de news:

Bonjour à tous ;
Pourrais ton me proposer une macro pour effacer les lignes en doublons
sur une plage de (A5 :E50) avec comme critère la colonne (B) à partir
de (B5)
Je tiens à effacer les lignes mais pas les supprimer.
Merci à vous et bonne journée.
Avatar
DanielCo
Bonjour,
Esssaie :

Sub test()
Dim c As Range
For Each c In [A5:A50]
ctr = 0
For i = 0 To 4
If Application.CountIf([A5:A50].Offset(, i), c.Offset(, i)) > 1
Then
ctr = ctr + 1
End If
Next i
If ctr = 5 Then
Intersect([A5:E50], Rows(c.Row)).ClearContents
End If
Next c
End Sub

Cordialement.
Daniel


Bonjour à tous ;
Pourrais ton me proposer une macro pour effacer les lignes en doublons
sur une plage de (A5 :E50) avec comme critère la colonne (B) à partir
de (B5)
Je tiens à effacer les lignes mais pas les supprimer.
Merci à vous et bonne journée.
Avatar
MichD
Bonjour,

Une façon de faire en se basant sur la présence ou non des doublons en colonne B

'----------------------------------------
Sub test()
Dim R As Range
Application.EnableEvents = False
Application.ScreenUpdating = False
With Worksheets("Feuil1") 'Nom feuille à adapter
With Range("A4:E50")
With .Columns(2)
.AdvancedFilter Action:=xlFilterInPlace, Unique:=True
End With
For Each R In .Rows
If R.EntireRow.Hidden = True Then R.Cells.ClearContents
Next
End With
On Error Resume Next
.ShowAllData
End With
Application.EnableEvents = True
Application.ScreenUpdating = True

End Sub
'----------------------------------------



MichD
--------------------------------------------
"Tibert" a écrit dans le message de groupe de discussion :


Bonjour à tous ;
Pourrais ton me proposer une macro pour effacer les lignes en doublons
sur une plage de (A5 :E50) avec comme critère la colonne (B) à partir
de (B5)
Je tiens à effacer les lignes mais pas les supprimer.
Merci à vous et bonne journée.
Avatar
Tibert
Bonjour "MichD"

Peut on avoir la même macro sans passer par un nom de feuille,
utiliser feuille active
merci

On 12 août, 12:05, "MichD" wrote:
Bonjour,

Une façon de faire en se basant sur la présence ou non des doublons e n colonne B

'----------------------------------------
Sub test()
Dim R As Range
Application.EnableEvents = False
Application.ScreenUpdating = False
With Worksheets("Feuil1") 'Nom feuille à adapter
    With Range("A4:E50")
        With .Columns(2)
            .AdvancedFilter Action:=xlFilterInPlace, Unique :=True
        End With
        For Each R In .Rows
            If R.EntireRow.Hidden = True Then R.Cells.Clear Contents
        Next
    End With
    On Error Resume Next
    .ShowAllData
End With
Application.EnableEvents = True
Application.ScreenUpdating = True

End Sub
'----------------------------------------

MichD
--------------------------------------------
"Tibert"  a écrit dans le message de groupe de discussion :


Bonjour à tous ;
Pourrais ton me proposer une macro pour effacer les lignes en doublons
sur une plage de (A5 :E50) avec comme critère la colonne (B) à partir
de (B5)
Je tiens à effacer les lignes mais pas les supprimer.
Merci à vous et bonne journée.
Avatar
MichD
N.B. À La première version de la macro, il manque un point
devant l'expression Range("A4:E50") dans With .Range("A4:E50")


| Peut on avoir la même macro sans passer par un nom de feuille,
| utiliser feuille active
'----------------------------------------
Sub test()
Dim R As Range
Application.EnableEvents = False
Application.ScreenUpdating = False
With ActiveSheet
With .Range("A4:E50")
With .Columns(2)
.AdvancedFilter Action:=xlFilterInPlace, Unique:=True
End With
For Each R In .Rows
If R.EntireRow.Hidden = True Then R.Cells.ClearContents
Next
End With
On Error Resume Next
.ShowAllData
End With
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub
'----------------------------------------


MichD
--------------------------------------------
"Tibert" a écrit dans le message de groupe de discussion :


Bonjour "MichD"

Peut on avoir la même macro sans passer par un nom de feuille,
utiliser feuille active
merci

On 12 août, 12:05, "MichD" wrote:
Bonjour,

Une façon de faire en se basant sur la présence ou non des doublons en colonne B

'----------------------------------------
Sub test()
Dim R As Range
Application.EnableEvents = False
Application.ScreenUpdating = False
With Worksheets("Feuil1") 'Nom feuille à adapter
With Range("A4:E50")
With .Columns(2)
.AdvancedFilter Action:=xlFilterInPlace, Unique:=True
End With
For Each R In .Rows
If R.EntireRow.Hidden = True Then R.Cells.ClearContents
Next
End With
On Error Resume Next
.ShowAllData
End With
Application.EnableEvents = True
Application.ScreenUpdating = True

End Sub
'----------------------------------------

MichD
--------------------------------------------
"Tibert" a écrit dans le message de groupe de discussion :


Bonjour à tous ;
Pourrais ton me proposer une macro pour effacer les lignes en doublons
sur une plage de (A5 :E50) avec comme critère la colonne (B) à partir
de (B5)
Je tiens à effacer les lignes mais pas les supprimer.
Merci à vous et bonne journée.
Avatar
Tibert
Bonjour MichD

Merci c'est super
Bonne fin d’après midi

On 12 août, 13:23, "MichD" wrote:
N.B. À La première version de la macro, il manque un point
devant l'expression  Range("A4:E50") dans With .Range("A4:E50")

| Peut on avoir la même macro sans passer par un nom de feuille,
| utiliser feuille active
'----------------------------------------
Sub test()
Dim R As Range
Application.EnableEvents = False
Application.ScreenUpdating = False
With ActiveSheet
    With .Range("A4:E50")
        With .Columns(2)
            .AdvancedFilter Action:=xlFilterInPlace, Unique :=True
        End With
        For Each R In .Rows
            If R.EntireRow.Hidden = True Then R.Cells.Clear Contents
        Next
    End With
    On Error Resume Next
    .ShowAllData
End With
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub
'----------------------------------------

MichD
--------------------------------------------
"Tibert"  a écrit dans le message de groupe de discussion :


Bonjour "MichD"

Peut on avoir la même macro sans passer par un nom de feuille,
utiliser feuille active
merci

On 12 août, 12:05, "MichD" wrote:







> Bonjour,

> Une façon de faire en se basant sur la présence ou non des doublons en colonne B

> '----------------------------------------
> Sub test()
> Dim R As Range
> Application.EnableEvents = False
> Application.ScreenUpdating = False
> With Worksheets("Feuil1") 'Nom feuille à adapter
>     With Range("A4:E50")
>         With .Columns(2)
>             .AdvancedFilter Action:=xlFilterInPlace, Uniq ue:=True
>         End With
>         For Each R In .Rows
>             If R.EntireRow.Hidden = True Then R.Cells.Cle arContents
>         Next
>     End With
>     On Error Resume Next
>     .ShowAllData
> End With
> Application.EnableEvents = True
> Application.ScreenUpdating = True

> End Sub
> '----------------------------------------

> MichD
> --------------------------------------------
> "Tibert"  a écrit dans le message de groupe de discussion :
>

> Bonjour à tous ;
> Pourrais ton me proposer une macro pour effacer les lignes en doublons
> sur une plage de (A5 :E50) avec comme critère la colonne (B) à part ir
> de (B5)
> Je tiens à effacer les lignes mais pas les supprimer.
> Merci à vous et bonne journée.