Liste de feuilles

Résolu
surplus Messages postés 673 Date d'inscription   Statut Membre Dernière intervention   -  
surplus Messages postés 673 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
j ai un soucis avec mon fichier
j ai une macro qui cache des lignes sur mes feuilles selon une valeur
Sub a()
Dim c As Range, i As Integer, j As Long
For i = 1 To ActiveWorkbook.Worksheets.Count
If Not Worksheets(i).Name = "Vehic" Then
With Worksheets(i)
For j = 2 To Worksheets("Vehic").Range("A65536").End(xlUp).Row
If Worksheets("Vehic").Cells(j, "H") = "N" Then
.Cells(j + 5, "A").EntireRow.Hidden = True
End If
Next j
End With
End If
Next i
End Sub
le probleme c est quavec cette macro il me cache les lignes sur toutes les pages de mon classeur et moi je ne voudrais que ces feuilles ci dessous
Sheets(Array("Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Août", _
' "Septembre", "Octobre", "Novembre", "Décembre")).Select
comment modifier ma macro?
si vous voulez un fichier exemple je peux vous le fournir
merci de votre aide
a bientot

10 réponses

  1. foo
     
    Bonjour

    Oui avec un model on voie mieux ton probleme

    A+
    Maurice
    0
  2. foo
     
    Bonjour

    j'ais refais ta macro pour la feuille Vehic
    regarde si jais bien compris

    Sub Test()
    Dim Lig As Long
    Vehic.Select
    ' Decache les lignes
    Cells.EntireRow.Hidden = False
    ' ------------------
    For Lig = 2 To Range("A" & Rows.Count).End(xlUp).Row
    If Cells(Lig, 8) = "N" Then
    Rows(Lig).EntireRow.Hidden = True
    End If
    Next
    End Sub

    A+
    Maurice
    0
  3. surplus Messages postés 673 Date d'inscription   Statut Membre Dernière intervention   4
     
    bonjour
    c'est pas tout a fait ça en fait les macros a() et b() fonctionnent bien c'est ce qu'il me faut mais elles modifient sur toutes les feuilles
    alors que moi je ne veux modifier que les feuilles des mois
    la 2 eme ligne des macros a et b
    For i = 1 To ActiveWorkbook.Worksheets.Count
    ca veut bien dire que ça concerne toutes les feuilles
    je pensais que en changeant du style (Array "feuilles des mois") ça aurait pu le faire mais je dois me tromper
    les macros a et b sont executés a l'ouverture du classeur
    comme souvent lol
    qu'en pensez vous?
    a bientot
    0
  4. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  5. foo
     
    Bonjour

    macro pour tous les mois

    Sub TestA()
    Onglet = Array("Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Août", _
    "Septembre", "Octobre", "Novembre", "Décembre")
    Application.EnableEvents = False
    For F = 0 To 11
    Sheets(Onglet(F)).Select
    Cells.EntireRow.Hidden = False
    For Lig = 2 To Range("A" & Rows.Count).End(xlUp).Row
    If Cells(Lig, 8) = "N" Then
    Rows(Lig).EntireRow.Hidden = True
    End If
    Next
    Next
    Application.EnableEvents = True
    End Sub

    A+

    Maurice
    0
  6. surplus Messages postés 673 Date d'inscription   Statut Membre Dernière intervention   4
     
    bonsoir
    la ca m affiche toutes les feuilles "O" ou "N"
    0
  7. foo
     
    bonsoir
    j'ais pas de O ou de N dans la colonne "H" des feuille mois desolé

    donc je peux pas savoir

    aller je vais au dodo

    A+

    Maurice
    0
  8. surplus Messages postés 673 Date d'inscription   Statut Membre Dernière intervention   4
     
    bonsoir
    O ou N sont dans la feuille "vehic"
    "O" on affiche la voiture "N" on la cache donc ne sont affichés dans les feuilles du mois les voitures dont la colonne H de la feuille "Vehic" = "O"
    bonne soirée
    a bientôt
    0
  9. foo
     
    Bonjour

    Apres une bonne nuit

    Sub TestMois()
    Onglet = Array("Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Août", _
    "Septembre", "Octobre", "Novembre", "Décembre")
    Application.EnableEvents = False
    Vehic.Select
    Cells.EntireRow.Hidden = False
    For F = 0 To 11
    For Lig = 2 To Range("A" & Rows.Count).End(xlUp).Row
    If Cells(Lig, 8) = "N" Then
    Sheets(Onglet(F)).Rows(Lig + 6).EntireRow.Hidden = True
    Else
    Sheets(Onglet(F)).Rows(Lig + 6).EntireRow.Hidden = False
    End If
    Next
    Next
    Application.EnableEvents = True
    End Sub

    bien sur si j'ais bien compris
    A+
    Maurice
    0
  10. surplus Messages postés 673 Date d'inscription   Statut Membre Dernière intervention   4
     
    bonjour
    merci de ton aide
    j ai réussi avec tout ça a l'adapter ça marche cool
    a bientôt
    0