Jak filtrovat kontingenční tabulku na základě konkrétní hodnoty buňky v aplikaci Excel?
Normálně filtrujeme data v kontingenční tabulce výběrem položek v rozevíracím seznamu, jak je znázorněno na obrázku níže. Ve skutečnosti můžete kontingenční tabulku filtrovat na základě hodnoty v konkrétní buňce. Metoda VBA v tomto článku vám pomůže problém vyřešit.
Filtrování kontingenční tabulky na základě konkrétní hodnoty buňky pomocí kódu VBA
Filtrování kontingenční tabulky na základě konkrétní hodnoty buňky pomocí kódu VBA
Následující kód VBA vám pomůže filtrovat kontingenční tabulku na základě konkrétní hodnoty buňky v aplikaci Excel. Postupujte prosím následovně.
1. Zadejte předem hodnotu, podle které budete kontingenční tabulku filtrovat, do buňky (zde vyberu buňku H6).
2. Otevřete list obsahující kontingenční tabulku, kterou budete filtrovat podle hodnoty buňky. Poté klikněte pravým tlačítkem na kartu listu a v místní nabídce vyberte možnost Zobrazit kód. Viz snímek obrazovky:
3. V otvoru Microsoft Visual Basic pro aplikace zkopírujte níže uvedený kód VBA do okna Kód.
Kód VBA: Filtrování kontingenční tabulky na základě hodnoty buňky
Private Sub Worksheet_Change(ByVal Target As Range)
'Update by Extendoffice 20180702
Dim xPTable As PivotTable
Dim xPFile As PivotField
Dim xStr As String
On Error Resume Next
If Intersect(Target, Range("H6:H7")) Is Nothing Then Exit Sub
Application.ScreenUpdating = False
Set xPTable = Worksheets("Sheet1").PivotTables("PivotTable2")
Set xPFile = xPTable.PivotFields("Category")
xStr = Target.Text
xPFile.ClearAllFilters
xPFile.CurrentPage = xStr
Application.ScreenUpdating = True
End Sub
Poznámky: V kódu,
4. zmáčkni Další + Q klávesy pro zavření Microsoft Visual Basic pro aplikace okno.
Poté je kontingenční tabulka filtrována na základě hodnoty v buňce H6, jak je uvedeno níže:
Hodnotu buňky můžete podle potřeby změnit na ostatní.
Pozor: Hodnoty, které zadáte do buňky H6, by se měly přesně shodovat s hodnotami v rozevíracím seznamu Kategorie v kontingenční tabulce.
Související články:
- Jak kombinovat více listů do kontingenční tabulky v aplikaci Excel?
- Jak vytvořit kontingenční tabulku z textového souboru v aplikaci Excel?
- Jak propojit filtr kontingenční tabulky s určitou buňkou v aplikaci Excel?
Nejlepší nástroje pro produktivitu v kanceláři
Rozšiřte své dovednosti Excel pomocí Kutools pro Excel a zažijte efektivitu jako nikdy předtím. Kutools for Excel nabízí více než 300 pokročilých funkcí pro zvýšení produktivity a úsporu času. Kliknutím sem získáte funkci, kterou nejvíce potřebujete...
Office Tab přináší do Office rozhraní s kartami a usnadňuje vám práci
- Povolte úpravy a čtení na kartách ve Wordu, Excelu, PowerPointu, Publisher, Access, Visio a Project.
- Otevřete a vytvořte více dokumentů na nových kartách ve stejném okně, nikoli v nových oknech.
- Zvyšuje vaši produktivitu o 50%a snižuje stovky kliknutí myší každý den!