J'ai recuperer un code, que quand il est ecrit "A Supprimer" dans la 12 eme
colonne cela me supprime la ligne.
Mais, cela prend la colonne complet en reference, de L1 a L65536 et cela
prend quand meme du temps a analyser la colonne complette.
For lin = ActiveSheet.UsedRange.Rows.Count + ActiveSheet.UsedRange.Row
To 1 Step -1
If Cells(lin, 12) = "A Supprimer" Then Rows(lin).Delete Shift:=xlUp
Next lin
Est il possible de faire la meme chose, mais que sur une plage donné.
si de L22 a L109 il est ecrit "A Supprimer" cela me supprime cette ligne.
Car la solution que j'ai teste 65536 ligne et cela met du temps.
Que si cela me testais que 87 Lignes, cela irait beaucoup plus vite.
de plus cette plage ne changera jamais.
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
Vincent.
Bonjour, Apparemment tu utilises toutes les lignes (sur au moins une colonne) de la feuille analysée. Une solution est de rentrer directement les lignes finales et initiales sur lesquelles doit tourner la macro : For lin = 109 To 22 Step -1 ... Ca te va ?
-----Message d'origine----- Bonjour,
J'ai recuperer un code, que quand il est ecrit "A Supprimer" dans la 12 eme
colonne cela me supprime la ligne. Mais, cela prend la colonne complet en reference, de L1 a L65536 et cela
prend quand meme du temps a analyser la colonne complette. For lin = ActiveSheet.UsedRange.Rows.Count + ActiveSheet.UsedRange.Row
To 1 Step -1 If Cells(lin, 12) = "A Supprimer" Then Rows (lin).Delete Shift:=xlUp
Next lin
Est il possible de faire la meme chose, mais que sur une plage donné.
si de L22 a L109 il est ecrit "A Supprimer" cela me supprime cette ligne.
Car la solution que j'ai teste 65536 ligne et cela met du temps.
Que si cela me testais que 87 Lignes, cela irait beaucoup plus vite.
de plus cette plage ne changera jamais.
Merci de votre aide.
Dom
.
Bonjour,
Apparemment tu utilises toutes les lignes (sur au moins
une colonne) de la feuille analysée.
Une solution est de rentrer directement les lignes finales
et initiales sur lesquelles doit tourner la macro :
For lin = 109 To 22 Step -1
...
Ca te va ?
-----Message d'origine-----
Bonjour,
J'ai recuperer un code, que quand il est ecrit "A
Supprimer" dans la 12 eme
colonne cela me supprime la ligne.
Mais, cela prend la colonne complet en reference, de L1 a
L65536 et cela
prend quand meme du temps a analyser la colonne complette.
For lin = ActiveSheet.UsedRange.Rows.Count +
ActiveSheet.UsedRange.Row
To 1 Step -1
If Cells(lin, 12) = "A Supprimer" Then Rows
(lin).Delete Shift:=xlUp
Next lin
Est il possible de faire la meme chose, mais que sur une
plage donné.
si de L22 a L109 il est ecrit "A Supprimer" cela me
supprime cette ligne.
Car la solution que j'ai teste 65536 ligne et cela met du
temps.
Que si cela me testais que 87 Lignes, cela irait beaucoup
plus vite.
Bonjour, Apparemment tu utilises toutes les lignes (sur au moins une colonne) de la feuille analysée. Une solution est de rentrer directement les lignes finales et initiales sur lesquelles doit tourner la macro : For lin = 109 To 22 Step -1 ... Ca te va ?
-----Message d'origine----- Bonjour,
J'ai recuperer un code, que quand il est ecrit "A Supprimer" dans la 12 eme
colonne cela me supprime la ligne. Mais, cela prend la colonne complet en reference, de L1 a L65536 et cela
prend quand meme du temps a analyser la colonne complette. For lin = ActiveSheet.UsedRange.Rows.Count + ActiveSheet.UsedRange.Row
To 1 Step -1 If Cells(lin, 12) = "A Supprimer" Then Rows (lin).Delete Shift:=xlUp
Next lin
Est il possible de faire la meme chose, mais que sur une plage donné.
si de L22 a L109 il est ecrit "A Supprimer" cela me supprime cette ligne.
Car la solution que j'ai teste 65536 ligne et cela met du temps.
Que si cela me testais que 87 Lignes, cela irait beaucoup plus vite.
de plus cette plage ne changera jamais.
Merci de votre aide.
Dom
.
Vincent.
Bonjour, Apparemment tu utilises toutes les lignes (sur au moins une colonne) de la feuille analysée. Une solution est de rentrer directement les lignes finales et initiales sur lesquelles doit tourner la macro : For lin = 109 To 22 Step -1 ... Ca te va ?
-----Message d'origine----- Bonjour,
J'ai recuperer un code, que quand il est ecrit "A Supprimer" dans la 12 eme
colonne cela me supprime la ligne. Mais, cela prend la colonne complet en reference, de L1 a L65536 et cela
prend quand meme du temps a analyser la colonne complette. For lin = ActiveSheet.UsedRange.Rows.Count + ActiveSheet.UsedRange.Row
To 1 Step -1 If Cells(lin, 12) = "A Supprimer" Then Rows (lin).Delete Shift:=xlUp
Next lin
Est il possible de faire la meme chose, mais que sur une plage donné.
si de L22 a L109 il est ecrit "A Supprimer" cela me supprime cette ligne.
Car la solution que j'ai teste 65536 ligne et cela met du temps.
Que si cela me testais que 87 Lignes, cela irait beaucoup plus vite.
de plus cette plage ne changera jamais.
Merci de votre aide.
Dom
.
Bonjour,
Apparemment tu utilises toutes les lignes (sur au moins
une colonne) de la feuille analysée.
Une solution est de rentrer directement les lignes finales
et initiales sur lesquelles doit tourner la macro :
For lin = 109 To 22 Step -1
...
Ca te va ?
-----Message d'origine-----
Bonjour,
J'ai recuperer un code, que quand il est ecrit "A
Supprimer" dans la 12 eme
colonne cela me supprime la ligne.
Mais, cela prend la colonne complet en reference, de L1 a
L65536 et cela
prend quand meme du temps a analyser la colonne complette.
For lin = ActiveSheet.UsedRange.Rows.Count +
ActiveSheet.UsedRange.Row
To 1 Step -1
If Cells(lin, 12) = "A Supprimer" Then Rows
(lin).Delete Shift:=xlUp
Next lin
Est il possible de faire la meme chose, mais que sur une
plage donné.
si de L22 a L109 il est ecrit "A Supprimer" cela me
supprime cette ligne.
Car la solution que j'ai teste 65536 ligne et cela met du
temps.
Que si cela me testais que 87 Lignes, cela irait beaucoup
plus vite.
Bonjour, Apparemment tu utilises toutes les lignes (sur au moins une colonne) de la feuille analysée. Une solution est de rentrer directement les lignes finales et initiales sur lesquelles doit tourner la macro : For lin = 109 To 22 Step -1 ... Ca te va ?
-----Message d'origine----- Bonjour,
J'ai recuperer un code, que quand il est ecrit "A Supprimer" dans la 12 eme
colonne cela me supprime la ligne. Mais, cela prend la colonne complet en reference, de L1 a L65536 et cela
prend quand meme du temps a analyser la colonne complette. For lin = ActiveSheet.UsedRange.Rows.Count + ActiveSheet.UsedRange.Row
To 1 Step -1 If Cells(lin, 12) = "A Supprimer" Then Rows (lin).Delete Shift:=xlUp
Next lin
Est il possible de faire la meme chose, mais que sur une plage donné.
si de L22 a L109 il est ecrit "A Supprimer" cela me supprime cette ligne.
Car la solution que j'ai teste 65536 ligne et cela met du temps.
Que si cela me testais que 87 Lignes, cela irait beaucoup plus vite.
de plus cette plage ne changera jamais.
Merci de votre aide.
Dom
.
AV
Est il possible de faire la meme chose, mais que sur une plage donné. si de L22 a L109 il est ecrit "A Supprimer" cela me supprime cette ligne.
Sub suppr_lignes() With ActiveSheet For lg = 109 To 22 Step -1 If Range("L" & lg) = "A Supprimer" Then Rows(lg).Delete Next End With End Sub
AV
Est il possible de faire la meme chose, mais que sur une plage donné.
si de L22 a L109 il est ecrit "A Supprimer" cela me supprime cette ligne.
Sub suppr_lignes()
With ActiveSheet
For lg = 109 To 22 Step -1
If Range("L" & lg) = "A Supprimer" Then Rows(lg).Delete
Next
End With
End Sub