< návrat zpět

MS Excel


Téma: Filtrování KT dle 2 datumů rss

Zaslal/a 30.5.2022 13:31

Zdravím poradil by někdo jak zprovoznit makro které bude filtrovat tabulku dle datumů.
Mám XY lidí a jejich denní výkaz z kterého se mi dělá KT+Graf a já bych si chtěl někdy vyfiltrovat jen třeba posledních 10 dni tak že mám buňku B1 kde je dnešní datum, v B2 mám kolik dní chci filtrovat a tím se mi dopočítá B3.

Pak mám Makro které do promněné načte datum z B1 a B3 do druhé a pak by se mělo KT zafiltrovat mezi daty B1 a B3.
Problém je že promněná:
DoData = Range("B1").Value
se datum uloží v CZ formátu dd.mm.yyyy ale v tabulce se mi pak chce filtrovat jako v US formátu mm/dd/yyy = z data 30.5.2022 to pak hledá jako by 5/30/2022 což mi pak žádná data nenajde.

Případně snad víc napoví přiložený soubor.

PS: dá se do grafu nějak upravit aby čas v levém sloupci byl na celá čísla, Např 4:00, 5:00, 6:00, 7:00, 8:00, 9:00, 10:00H. Našel jsem nastavení Min Max osy 0,15 až 0,5 ale touto změnou se moc dobře nemanipuluje

Příloha: zip52797_filtrovani-grafu.zip (69kB, staženo 11x)
Zaslat odpověď >

#052799
elninoslov
Sub T()
With Worksheets("Home")
DoData = Format(.Range("B1").Value, "d.m.yyyy")
OdData = Format(.Range("B3").Value, "d.m.yyyy")
With .ChartObjects("Graf 2").Chart.PivotLayout.PivotTable.PivotFields("Datum")
.ClearLabelFilters
.PivotItems("(blank)").Visible = False
.PivotFilters.Add2 Type:=xlCaptionIsBetween, Value1:=OdData, Value2:=DoData
End With
End With
End Sub


Ja by som si ale previedol ten "dátum" na dátum a potom by to bolo
Sub T()
With Worksheets("Home")
DoData = CDbl(.Range("B1").Value)
OdData = CDbl(.Range("B3").Value)
With .ChartObjects("Graf 2").Chart.PivotLayout.PivotTable.PivotFields("Datum")
.ClearLabelFilters
.PivotItems("(blank)").Visible = False
.PivotFilters.Add2 Type:=xlDateBetween, Value1:=OdData, Value2:=DoData
End With
End With
End Sub
citovat
#052800
avatar
Spíš bych přidal druhý sloupec "datum" a vložil bych filtr "časovou osu". (analýza KT, filtr, vložit časovou osu).
(první datum se v kt automaticky převádí na text, proto ta kopie)

Add manipulace s časem v ose - makro, převést čas na desetinné číslo a vložit do osy.citovat
#052807
avatar
Děkuji moc za rady.

@elninoslov
opět úžasné a elegantní řešení.citovat

Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

On-line nástroje

Formulář Faktura

Formulář Faktura IV

Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.

Aktivní diskuse

Hromadné přepsání

elninoslov • 24.5. 10:29

Hromadné přepsání

Nomi • 24.5. 8:32

Index - každý rok začít od 1 Power Query

Alfan • 23.5. 9:17

nepřímý odkaz

elninoslov • 23.5. 0:00

nepřímý odkaz

bordov • 22.5. 18:35

vrácené hodnoty

Anonym • 22.5. 15:46

vrácené hodnoty

Anonym • 22.5. 15:45