Bonjour, j'aimerais effectuer la procédure suivante :
Pour chaques cellules B2:B10 [prenons B5 par exemple]
si la cellule suivante [ B6 dans l'exemple ] lui est égale , a le meme
contenu en terme de chaine de caractère ,supprimer la ligne de cette cellule
suivante [ la ligne de la cellule B6 ] et recommencer l'opération avec pour
cellule initiale toujours B5
sinon refaire cette procédure avec la cellule suivante [ ici B6 qui n'a pas
été supprimée car B5 était différent de B6 ]
Je pensais à quelque chose du genre :
For Each cellule In Range("B2:B10")
If cellule.Value = ### Then
Rows(###).Select
Selection.Delete Shift:=xlUp
End If
Next cellule
Le but est donc de remplir les ### ... peut etre y a t-il plus simple ?
merci de m'éclairer .
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
AV
Essaye ça : Sub zzz() For i = [B65536].End(3).Row To 1 Step -1 On Error Resume Next If Cells(i, 2).Value = Cells(i - 1, 2).Value Then Cells(i, 2).Delete Shift:=xlUp Next End Sub
AV
Essaye ça :
Sub zzz()
For i = [B65536].End(3).Row To 1 Step -1
On Error Resume Next
If Cells(i, 2).Value = Cells(i - 1, 2).Value Then Cells(i, 2).Delete
Shift:=xlUp
Next
End Sub
Essaye ça : Sub zzz() For i = [B65536].End(3).Row To 1 Step -1 On Error Resume Next If Cells(i, 2).Value = Cells(i - 1, 2).Value Then Cells(i, 2).Delete Shift:=xlUp Next End Sub
AV
lSteph
Bonsoir,
En général si l'on supprime des lignes vaut mieux remonter mais...
sinon refaire cette procédure avec la cellule suivante [ ici B6 qui n'a pas été supprimée car B5 était différent de B6 ] ....et si b6 était égale et donc a été supprimée, on arrête tout?
lSteph "didier" a écrit dans le message de news:
Bonjour, j'aimerais effectuer la procédure suivante :
Pour chaques cellules B2:B10 [prenons B5 par exemple]
si la cellule suivante [ B6 dans l'exemple ] lui est égale , a le meme contenu en terme de chaine de caractère ,supprimer la ligne de cette cellule suivante [ la ligne de la cellule B6 ] et recommencer l'opération avec pour cellule initiale toujours B5
sinon refaire cette procédure avec la cellule suivante [ ici B6 qui n'a pas été supprimée car B5 était différent de B6 ]
Je pensais à quelque chose du genre :
For Each cellule In Range("B2:B10") If cellule.Value = ### Then Rows(###).Select Selection.Delete Shift:=xlUp End If Next cellule
Le but est donc de remplir les ### ... peut etre y a t-il plus simple ? merci de m'éclairer .
Bonsoir,
En général si l'on supprime des lignes vaut mieux remonter mais...
sinon refaire cette procédure avec la cellule suivante [ ici B6 qui n'a
pas
été supprimée car B5 était différent de B6 ]
....et si b6 était égale et donc a été supprimée, on arrête tout?
lSteph
"didier" <didier@discussions.microsoft.com> a écrit dans le message de news:
07434D36-E369-4CEA-A5A8-F0ED78B26C0E@microsoft.com...
Bonjour, j'aimerais effectuer la procédure suivante :
Pour chaques cellules B2:B10 [prenons B5 par exemple]
si la cellule suivante [ B6 dans l'exemple ] lui est égale , a le meme
contenu en terme de chaine de caractère ,supprimer la ligne de cette
cellule
suivante [ la ligne de la cellule B6 ] et recommencer l'opération avec
pour
cellule initiale toujours B5
sinon refaire cette procédure avec la cellule suivante [ ici B6 qui n'a
pas
été supprimée car B5 était différent de B6 ]
Je pensais à quelque chose du genre :
For Each cellule In Range("B2:B10")
If cellule.Value = ### Then
Rows(###).Select
Selection.Delete Shift:=xlUp
End If
Next cellule
Le but est donc de remplir les ### ... peut etre y a t-il plus simple ?
merci de m'éclairer .
En général si l'on supprime des lignes vaut mieux remonter mais...
sinon refaire cette procédure avec la cellule suivante [ ici B6 qui n'a pas été supprimée car B5 était différent de B6 ] ....et si b6 était égale et donc a été supprimée, on arrête tout?
lSteph "didier" a écrit dans le message de news:
Bonjour, j'aimerais effectuer la procédure suivante :
Pour chaques cellules B2:B10 [prenons B5 par exemple]
si la cellule suivante [ B6 dans l'exemple ] lui est égale , a le meme contenu en terme de chaine de caractère ,supprimer la ligne de cette cellule suivante [ la ligne de la cellule B6 ] et recommencer l'opération avec pour cellule initiale toujours B5
sinon refaire cette procédure avec la cellule suivante [ ici B6 qui n'a pas été supprimée car B5 était différent de B6 ]
Je pensais à quelque chose du genre :
For Each cellule In Range("B2:B10") If cellule.Value = ### Then Rows(###).Select Selection.Delete Shift:=xlUp End If Next cellule
Le but est donc de remplir les ### ... peut etre y a t-il plus simple ? merci de m'éclairer .
lSteph
selon toute hypothèse celle-ci devrait être la plus probable:
Sub cnet() Dim i As Long Application.ScreenUpdating = False For i = [b65536].End(xlUp).Row To 2 Step -1 With Cells(i, 2) If .Value = .Offset(-1, 0) Then .EntireRow.Delete End With Next Application.ScreenUpdating = True End Sub
'lSteph
"lSteph" a écrit dans le message de news:
Bonsoir,
En général si l'on supprime des lignes vaut mieux remonter mais...
sinon refaire cette procédure avec la cellule suivante [ ici B6 qui n'a pas été supprimée car B5 était différent de B6 ] ....et si b6 était égale et donc a été supprimée, on arrête tout?
lSteph "didier" a écrit dans le message de news:
Bonjour, j'aimerais effectuer la procédure suivante :
Pour chaques cellules B2:B10 [prenons B5 par exemple]
si la cellule suivante [ B6 dans l'exemple ] lui est égale , a le meme contenu en terme de chaine de caractère ,supprimer la ligne de cette cellule suivante [ la ligne de la cellule B6 ] et recommencer l'opération avec pour cellule initiale toujours B5
sinon refaire cette procédure avec la cellule suivante [ ici B6 qui n'a pas été supprimée car B5 était différent de B6 ]
Je pensais à quelque chose du genre :
For Each cellule In Range("B2:B10") If cellule.Value = ### Then Rows(###).Select Selection.Delete Shift:=xlUp End If Next cellule
Le but est donc de remplir les ### ... peut etre y a t-il plus simple ? merci de m'éclairer .
selon toute hypothèse celle-ci devrait être la plus probable:
Sub cnet()
Dim i As Long
Application.ScreenUpdating = False
For i = [b65536].End(xlUp).Row To 2 Step -1
With Cells(i, 2)
If .Value = .Offset(-1, 0) Then .EntireRow.Delete
End With
Next
Application.ScreenUpdating = True
End Sub
'lSteph
"lSteph" <lecocosteph@frite.fr> a écrit dans le message de news:
OSYDa8AhGHA.3924@TK2MSFTNGP03.phx.gbl...
Bonsoir,
En général si l'on supprime des lignes vaut mieux remonter mais...
sinon refaire cette procédure avec la cellule suivante [ ici B6 qui n'a
pas
été supprimée car B5 était différent de B6 ]
....et si b6 était égale et donc a été supprimée, on arrête tout?
lSteph
"didier" <didier@discussions.microsoft.com> a écrit dans le message de
news: 07434D36-E369-4CEA-A5A8-F0ED78B26C0E@microsoft.com...
Bonjour, j'aimerais effectuer la procédure suivante :
Pour chaques cellules B2:B10 [prenons B5 par exemple]
si la cellule suivante [ B6 dans l'exemple ] lui est égale , a le meme
contenu en terme de chaine de caractère ,supprimer la ligne de cette
cellule
suivante [ la ligne de la cellule B6 ] et recommencer l'opération avec
pour
cellule initiale toujours B5
sinon refaire cette procédure avec la cellule suivante [ ici B6 qui n'a
pas
été supprimée car B5 était différent de B6 ]
Je pensais à quelque chose du genre :
For Each cellule In Range("B2:B10")
If cellule.Value = ### Then
Rows(###).Select
Selection.Delete Shift:=xlUp
End If
Next cellule
Le but est donc de remplir les ### ... peut etre y a t-il plus simple ?
merci de m'éclairer .
selon toute hypothèse celle-ci devrait être la plus probable:
Sub cnet() Dim i As Long Application.ScreenUpdating = False For i = [b65536].End(xlUp).Row To 2 Step -1 With Cells(i, 2) If .Value = .Offset(-1, 0) Then .EntireRow.Delete End With Next Application.ScreenUpdating = True End Sub
'lSteph
"lSteph" a écrit dans le message de news:
Bonsoir,
En général si l'on supprime des lignes vaut mieux remonter mais...
sinon refaire cette procédure avec la cellule suivante [ ici B6 qui n'a pas été supprimée car B5 était différent de B6 ] ....et si b6 était égale et donc a été supprimée, on arrête tout?
lSteph "didier" a écrit dans le message de news:
Bonjour, j'aimerais effectuer la procédure suivante :
Pour chaques cellules B2:B10 [prenons B5 par exemple]
si la cellule suivante [ B6 dans l'exemple ] lui est égale , a le meme contenu en terme de chaine de caractère ,supprimer la ligne de cette cellule suivante [ la ligne de la cellule B6 ] et recommencer l'opération avec pour cellule initiale toujours B5
sinon refaire cette procédure avec la cellule suivante [ ici B6 qui n'a pas été supprimée car B5 était différent de B6 ]
Je pensais à quelque chose du genre :
For Each cellule In Range("B2:B10") If cellule.Value = ### Then Rows(###).Select Selection.Delete Shift:=xlUp End If Next cellule
Le but est donc de remplir les ### ... peut etre y a t-il plus simple ? merci de m'éclairer .