Excel - Podmíněné skrytí řádků ve více listech

Problém

Mám jeden Excel soubor s více listy, a všechny z nich se stejnými sloupci a řádky. Potřebuji skrýt určité řádky v každém listu (stejná čísla řádků pro všechny listy), pokud je hodnota v konkrétní buňce nulová.

Tak, jak to mohu udělat ve VB a automaticky aktualizovat při změně hodnoty v předchozí určené buňce.

tj .: Mám 10 listů pro deset zaměstnanců a na každém listu mám následující údaje:

 A1 = Jméno zaměstnance A2 = Věk, A4 = Plat, B4 = 4000 (všechny částky (hodnoty) se budou v jednotlivých listech lišit) A5 = Srážky, B5 = 500 A6 = Pojištění, B6 = 1000 A8 = Čistý plat, B8 = 2500 A10 = placeno šekem A11 = placené převodem, B11 = 2500 A13 = celkem, B13 = 2500 

Můj požadavek je skrýt každý řádek, který má nulu ve sloupci B ve všech 10 listech. Samozřejmě, že hodnota všech listů je převzata z jednoho hlavního listu, takže pokud se hodnota v základních listech změnila, změní se také v 10 listech na každého korespondenta.

Poznámka: Hodnoty nemusím filtrovat.

Stručně chci napsat makro, které skryje všechny řádky (určené), které mají nulu ve sloupci B, a které se použijí na 10 listů, které mají stejné řádky a sloupce.

Řešení

  • Otevřete VBE
  • Klikněte na hlavní list
  • Vložte tento kód:

 Private Sub Worksheet_Change (Cíl Tarif jako ByVal jako rozsah) Dim bHide Jako booleovský Pokud Target. Název Potom GoTo Next_Sheet Listy (Sheet.Name) .Rows (Target.Row) .Hidden = bHide Další_typ: Další konec Sub 

Poznámka

Díky rizvisa1 za tento tip na fóru.

Předchozí Článek Následující Článek

Nejlepší Tipy