Mike, en tant que comptable, a besoin de masquer les lignes dans une feuille de calcul en fonction des valeurs de deux cellules de la ligne. Ses tables de données ont trois colonnes, et si une ligne contient un zéro dans les colonnes deux et trois, la ligne doit être masquée. Si la colonne deux ou trois est vide ou contient une autre valeur, la ligne ne doit pas être masquée.

Vous pouvez aborder ce problème de plusieurs manières. La première consiste à utiliser le filtre automatique d’Excel. Créez simplement une autre colonne contenant une formule comme celle-ci:

=AND(B2=0,C2=0)

La valeur renvoyée par la formule sera True uniquement si les deuxième (B) et troisième © colonnes contiennent une valeur zéro. Copiez la formule dans les autres cellules appropriées de la colonne et vous pouvez ensuite utiliser un filtre automatique pour filtrer les données en fonction de cette colonne. Lorsque vous affichez uniquement les lignes contenant un False dans la colonne, vous avez effectivement masqué les lignes dans lesquelles il y a une valeur zéro dans les colonnes deux et trois.

Vous pouvez également utiliser une macro pour extraire les lignes pour vous. La macro suivante parcourt chaque ligne de la feuille de calcul, en commençant par la ligne 1. Tant qu’il y a quelque chose dans la colonne A, la macro vérifie qu’il y a une valeur zéro dans les colonnes B et C. S’il y en a, alors la propriété .Hidden de la ligne est définie.

Sub Hide()

Dim Criteria as Boolean     Dim i As Integer

i = 1     Do Until Trim(Cells(i, 1).Value) = ""          Criteria = True         Criteria = Criteria And (Cells(i, 2).Value = 0) _           And Cells(i, 2).Value <> ""

Criteria = Criteria And (Cells(i, 3).Value = 0) _           And Cells(i, 3).Value <> ""          If Criteria Then Rows(i).EntireRow.Hidden = True         i = i + 1      Loop  End Sub

La macro s’exécute jusqu’à ce qu’elle rencontre une ligne où il n’y a rien dans la colonne A. Cela signifie que vous devez vous assurer qu’il y a réellement quelque chose dans les lignes avant votre table de données. Si votre table de données commence à la ligne 4 de la feuille de calcul et que les cellules A1 à A3 ne contiennent rien, la macro ne s’exécutera jamais de manière satisfaisante. Vous pouvez, bien sûr, ajuster la macro dans cette situation afin qu’elle commence à vérifier dans la ligne 4; changez simplement l’affectation initiale de la variable i à 4 au lieu de 1.

_Note: _

Si vous souhaitez savoir comment utiliser les macros décrites sur cette page (ou sur toute autre page des sites ExcelTips), j’ai préparé une page spéciale qui comprend des informations utiles.

lien: / excelribbon-ExcelTipsMacros [Cliquez ici pour ouvrir cette page spéciale dans un nouvel onglet de navigateur].

ExcelTips est votre source pour une formation Microsoft Excel rentable.

Cette astuce (2416) s’applique à Microsoft Excel 97, 2000, 2002 et 2003. Vous pouvez trouver une version de cette astuce pour l’interface ruban d’Excel (Excel 2007 et versions ultérieures) ici:

link: / excelribbon-Hiding_Rows_Based_on_Two_Values ​​[Masquer les lignes basées sur deux valeurs].