D
dédé_la_sardine
Guest
bonjour
je suis nouveau sur ce forum
j'ai un peu cherché et j'ai pas trouvé ma réponse
si j'ai mal cherché, pardon d'avance
contexte
une macro qui masque / affiche dans une feuille les lignes selon la valeur d'une cellule dans cette ligne. en gros, masquer les lignes si quantité = 0
mon pb
1- j'ouvre le fichier
2- si je lance la macro c'est rapide
3- si je relance la macro , elle rame et idem les fois suivantes
ma question
- pourquoi ca rame ?
bien sur le code est ss doute pas génial
je vous joins le code d'une boucle (il y en a 4)
merci d'avance de vos idées ou commentaires
dédé
Count = 0
For b = 29 + Start To 46 + Start
'vide = Worksheets("Proposition Client").Cells(b, 8).Value
Range("D" & b).Select
vide = ActiveCell.Value
If (vide = "") Then
Rows(b).Select
Selection.EntireRow.Hidden = True
Else
Rows(b).Select
Selection.EntireRow.Hidden = False
Count = Count + 1
End If
Next b
If (Count = 0) Then
Rows(282).Select
Selection.EntireRow.Hidden = True
Else
Rows(282).Select
Selection.EntireRow.Hidden = False
End If
je suis nouveau sur ce forum
j'ai un peu cherché et j'ai pas trouvé ma réponse
si j'ai mal cherché, pardon d'avance
contexte
une macro qui masque / affiche dans une feuille les lignes selon la valeur d'une cellule dans cette ligne. en gros, masquer les lignes si quantité = 0
mon pb
1- j'ouvre le fichier
2- si je lance la macro c'est rapide
3- si je relance la macro , elle rame et idem les fois suivantes
ma question
- pourquoi ca rame ?
bien sur le code est ss doute pas génial
je vous joins le code d'une boucle (il y en a 4)
merci d'avance de vos idées ou commentaires
dédé
Count = 0
For b = 29 + Start To 46 + Start
'vide = Worksheets("Proposition Client").Cells(b, 8).Value
Range("D" & b).Select
vide = ActiveCell.Value
If (vide = "") Then
Rows(b).Select
Selection.EntireRow.Hidden = True
Else
Rows(b).Select
Selection.EntireRow.Hidden = False
Count = Count + 1
End If
Next b
If (Count = 0) Then
Rows(282).Select
Selection.EntireRow.Hidden = True
Else
Rows(282).Select
Selection.EntireRow.Hidden = False
End If