Masquer Démasquer suite

Re bonjour,

Je me permets de relancer mon sujet pour un des deux codes que je n'arrive pas à faire fonctionner, le voici :

code

Je l'ai mis dans ma Feuille Janvier_2023 pour ma comptabilité, mais ça ne fonctionne pas comme je voudrai, on dirait qu'il part en boucle pour toutes les feuilles

J'aurai besoin d'une macro individualisée pour chaque Mois que je peux activer à l'aide d'un bouton commande dans chaque feuille

Je ne sais pas si j'arrive à bien me faire comprendre, excusez moi....D'avance, merci, bien cordialement, Chti59xcel

Bonjour,

Pour commencez avez vous un exemple de la feuille excel sur laquelle vous travailler se serait nettement plus facile pour comprendre vos attente et par la suite pouvoir tester le programme VBA a vous proposez.

Ensuite d'après le code VBA que vous montrer on vois bien que vous parcourez chaque feuilles de votre classeur avec l'instruction suivante.

For Each ws In ThisWorkbook.Sheets

Donc normal que le programme boucle sur toutes vos feuilles.

Je vous donne tout de même un code qui je pense saura répondre a vos attente.

Sub Toggle_Hide_Unhide_Rows_1()
    Dim cell As Range
    Dim i As Integer

    Set ws = ThisWorkbook.ActiveSheet

    For i = 3 To 14
        For Each cell In ws.Range("G3:G192")
            If cell.Value = 0 Or cell.Value = "" Then
                cell.EntireRow.Hidden = Not cell.EntireRow.Hidden
            End If
        Next cell
    Next i
End Sub

Cordialement

Edit : reponse déjà donnée

Mais enlevez aussi le NEXT WS

Crdlt

ok, voici une feuille test

6feuille-test.xlsm (27.83 Ko)

Bonjour voici votre classeur excel avec le code VBA et les bouton.

Cordialement

Vous allez pas me croire, mais dans mon classeur ça ne fonctionne pas ?????

Vous n'allez pas me croire, mais dans mon classeur ça ne fonctionne pas ?????

Quand je lance la procédure depuis VBA avec la touche F5, ça fonctionne en masquer et démasquer, mais quand je lance la procédure depuis ma feuille Janvier_2023 par exemple avec un bouton commande auquel je raccroche la macro et bien, ça ne marche pas ???

Bonjour,

Je ne comprend pas pourquoi ça ne marche pas.

vérifier le code par rapport a la dernière feuille excel que je vous ai fourni, peu etre que la ligne suivante n'a pas ete remplacer sinon je ne vois rien d'autre pour ma part.

Cordialement

ThisWorkbook.ActiveSheet

Essayez le code comme ceci

Sub Toggle_Hide_Unhide_Rows_1()
Dim cell As Range
Dim ws As Worksheet

Set ws = ThisWorkbook.ActiveSheet

For Each cell In ws.Range("G3:G192")
    If cell.Value = 0 Or cell.Value = vbNullString Then
        cell.EntireRow.Hidden = Not cell.EntireRow.Hidden
    End If
Next cell

End Sub

Pour vous éviter de répéter le code dans chaque feuille, placez-le dans un module

Ensuite dans chaque feuille, dessinez votre bouton
Puis double-clic dessus et ajoutez cette ligne -->

Call Toggle_Hide_Unhide_Rows_1

Exemple avec un bouton sur la feuille Janvier, cela donnerait ceci

Private Sub CommandButton1_Click()
Call Toggle_Hide_Unhide_Rows_1
End Sub

Crdlt

EDIT : je découvre votre premier fil. Pourquoi dupliquez-vous les fils !! https://forum.excel-pratique.com/excel/masquer-demasquer-188351
Merci de bien vouloir l'éviter à l'avenir et pour le cas présent de choisir celui sur lequel vous continuez et de cloturer celui qui est terminé

Rechercher des sujets similaires à "masquer demasquer suite"