Macro masquer lignes sous condition dans une plage

  • Initiateur de la discussion Initiateur de la discussion Atiom
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Atiom

XLDnaute Occasionnel
Bonsoir le forum,

Dans le post ci-dessous Didier_mDF propose une macro pour masquer les lignes sous condition.

Ça fait un moment que j’essaye de la modifier pour mes besoins, mais rien à faire ! Il y toujours quelque chose que provoque des erreurs, alors je viens vous demander de l’aide ?

https://www.excel-downloads.com/threads/macro-masquer-lignes-condition.36061/

Je souhaiterais faire la chose suivante :

J’ai deux plages, Plage A - ( B25 :BA44) et Plage B - ( B59 :BA78) 20 lignes dans chaque plage .


Par biais d’une macro la plage A se remplie d’une façon aléatoire, mais toujours de haute en bas.

Je souhaiterait masquer les lignes vides de la plage A, mais au même temps celles de la plage B .

Par exemple :
S’il reste trois lignes vides dans la plage A alors masquer les trois lignes vides de cette plage mais aussi les trois dernières lignes de la plage B.

Bien sur il va falloir une deuxième macro pour pouvoir afficher chaque fois, toutes les lignes avant d’exécuter ce masque.

Merci d'vance et bonne soirée.
 
Re : Macro masquer lignes sous condition dans une plage

Bonsoir Atiom,

Pas sûr d'avoir tout compris... Mais tu peux éventuellement essayer ceci :

Code:
[COLOR=GRAY][B][I]DANS UN MODULE DE CODE STANDARD[/I][/B][/COLOR]

[COLOR=NAVY]Sub[/COLOR] Traitement()
[COLOR=NAVY]Dim[/COLOR] Plage [COLOR=NAVY]As[/COLOR] Range, Lign [COLOR=NAVY]As[/COLOR] Range
    [COLOR=NAVY]Set[/COLOR] Plage = Range("B25:BA44")
    [COLOR=NAVY]For Each[/COLOR] Lign [COLOR=NAVY]In[/COLOR] Plage.Rows
        [COLOR=NAVY]If[/COLOR] Application.CountA(Lign) = 0 [COLOR=NAVY]Then[/COLOR]
            Lign.EntireRow.Hidden = [COLOR=NAVY]True[/COLOR]
            Lign.Offset(34, 0).EntireRow.Hidden = [COLOR=NAVY]True
        End If
    Next[/COLOR] Lign
[COLOR=NAVY]End Sub[/COLOR]

[COLOR=NAVY]Sub[/COLOR] RAZ()
    Range("B25:BA44", "B59:BA78").EntireRow.Hidden = [COLOR=NAVY]False
End Sub[/COLOR]
Cordialement,
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
3
Affichages
844
Réponses
3
Affichages
447
Retour