Maquer les lignes vides plus rapidement

Lipadec

XLDnaute Occasionnel
Bonjour le forum

J'ai un tableau A8:O110, toutes les cellules contiennet des formules, car ce tableau a des liaisons avec d'autres feuilles.Il se remplit automatiquement.
Pour masquer les lignes vides pour voir l'aperçu, j'ai appliqué la macro qui m'a été donnée par ce forum, après l'avoir modifiée selon mes besoins
Voici la macro pour masquer ces lignes:

Sub masquer_JP()
Range("A11:O110").Select
For Each Cell In Selection
Cpt = 0
For I = 0 To 10
If Cell.Offset(0, I) <> "" Then
Cpt = Cpt + 1
End If
Next
If Cpt = 0 Then
Cell.EntireRow.Hidden = True
End If
Next
End Sub

et pour afficher les lignes, j'applique la macro suivante:

Sub afficher_JP()
For I = 11 To 110
If Cells(I, 11) = "" Then
Cells(I, 11).EntireRow.Hidden = False
End If
Next I
End Sub

Les deux macros fonctionnent bien

Le problème c'est que quand la macro masquer s'exécute, elle met beaucoup de temps, ce qui m'oblige à attendre.
Y-a-t-il pas quelque chose à ajouter à cette macro, pour la rendre plus rapide, pour ne pas revenir à la méthode habituelle, qui est "Format--->Cellules--->Lignes--->Masquer"

Merci pour votre aide, et merci pour ces forums qui nous donnent tout ce que nous cherchons.

Lipadec
 

ninbihan

XLDnaute Impliqué
Re : Maquer les lignes vides plus rapidement

Bonjour Lipadec

Peut être qu'en désactivant le calcul et le rafraichissement ta premiére macro sera plus rapide:
Code:
Sub masquer_JP()
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Range("A11:O110").Select
For Each Cell In Selection
Cpt = 0
For I = 0 To 10
If Cell.Offset(0, I) <> "" Then
Cpt = Cpt + 1
End If
Next
If Cpt = 0 Then
Cell.EntireRow.Hidden = True
End If
Next
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
End Sub

A tester,

Bon aprés midi,

Ninbihan

Edit: Bonjour JC ;-) , Lipadec, la macro peut etre amélirorée, peux tu joindre un fichier exemple ?
 
Dernière édition:

JCGL

XLDnaute Barbatruc
Re : Maquer les lignes vides plus rapidement

Bonjour à tous,

Essaye d'ajouter :

Après le Sub()
Application.ScreenUpdating =0

Et

Application.ScreenUpdating =1
Avant le End Sub()

A+ à tous,

Edition : Salut Petit Homme... ;-)
 

JCGL

XLDnaute Barbatruc
Re : Maquer les lignes vides plus rapidement

Bonjour à tous,
Salut Roro :),

Exactement, mon cher Roro.
Je deviens fainéant avec l'age...

Et un verre de Vin jaune en plus pour moi, j'espère... ARF...
Bien le Bonjour à Pont... et ses environs...

A++ :)
A+ à tous
 

roro69

XLDnaute Impliqué
Re : Maquer les lignes vides plus rapidement

Merci jcgl
C'est sur il faut s'économiser par ces temps de crise........
Un bon petit jaune de chez nous pour toi ; il ne pourra en plus que nous réchauffer .Car je pense que dans tes hauteurs il ne doit pas faire très chaud..........
A ++
 

Lipadec

XLDnaute Occasionnel
Re : Maquer les lignes vides plus rapidement

Rebonjour à tout le monde

Merci ninbihan, JCGL, roro69

j'ai testé le code de ninbihan, et ça marche bien, les cellules se masquent rapidement.
Pourrai-je appliquer la même chose pour afficher les lignes?

Lipadec
 

Discussions similaires

Statistiques des forums

Discussions
314 628
Messages
2 111 336
Membres
111 104
dernier inscrit
JEMADA