Macro pour masquer qui masque trop
Bonjour à tous,
Dans un tableau avec des macros pour trier, j'ai voulu ajouter à certaines de ces macros un code pour masquer certaines lignes contenant un "M" en colonne A
' MASQUER LES LIGNES M
Dim ligne As Integer
For ligne = 1 To 1000
If Cells(ligne, 1) = "M" Then
Rows(ligne & ":" & ligne).EntireRow.Hidden = True
End If
NextSauf que toutes ces lignes ce sont masqués même dans les autres macros de tris malgré un reset en tête de code :
' COCHER TOUS LES FILTRES
With Sheets("DONNEES")
If .FilterMode = True Then .ShowAllData
Cells.EntireRow.Hidden = False
' DEMASQUER LIGNES ET COLONNES
Cells.Select
Selection.EntireColumn.Hidden = False
Selection.EntireRow.Hidden = False
ActiveCell.Select
End WithElles sont même resté masqué après la suppression du code (MASQUER LES LIGNES M)
Du coup pour résoudre mon problème, je me suis servi de ce "bug" en ajoutant à mes macros de tris ou devait apparaitre ces lignes le code suivant :
' AFFICHER LES LIGNES
Dim ligne As Integer
For ligne = 1 To 1000
If Cells(ligne, 1) = "M" Then
Rows(ligne & ":" & ligne).EntireRow.Hidden = False
End If
NextÇa marche mais je ne m'explique pas le pourquoi du comment.
Une idée?
Bonjour,
Dans la macro suivante:
' DEMASQUER LIGNES ET COLONNES
Cells.Select
Selection.EntireColumn.Hidden = False
Selection.EntireRow.Hidden = False
ActiveCell.Select
End WithVous avez sélection l'ensemble de la feuille en cliquant sur le coin en haut à gauche de la feuille, avec cette option vous ne pouvez pas démasquer les lignes ou les colonnes masquées, la preuve, faites l'essai suivant, masquer quelques lignes et quelques colonnes puis, sans passez par la macro, vous verrez que vous ne pourrez pas les démasquer. Pour que cela marche, il faut désigner un groupe de lignes ou de colonnes, c'est ce que vous avez fait dans la dernière macro.
Cdlt
Bonjour Roden,
Question : Pourquoi utiliser une macro pour trier et masque des lignes
Le Tri et Filtres sur Excel ne vous conviennent pas !?
@+
Bonjour,
@BrunoM45 : A l'origine j'ai pas pensé tout de suite au filtre... Mais l'ajout de cette macro m'a crée des problèmes.
@Arthuro83 : Je viens de masquer 10 lignes et après lancement de ma macro tout réapparaît
Je suis en train de m'apercevoir d'une chose :
Mon code démasque bien tout (car quand je l'isole seul tout apparaît). Par contre à la suite de ce code dans ma macro j'ai un filtrage de colonne B. Et ça doit être celle-ci qui masque mes fameuses lignes bien que le champ B de ces lignes est vide...
Pourtant en bas de mon tableau j'ai des lignes complètement vides (normal me direz-vous). Mais celle-ci devraient se masquer du coup...
Et lorsque j'écris un mot quelconque en B dans une de ses lignes vide (en bas) la ligne n'est pas masqué par la macro...
Seulement celles qui avaient été masquées à l'origine par le code qui aujourd'hui n'existe plus.