Žádná vychytávka neexistuje.
Bez přílohy pouze takto:
Přidejte sloupce ID_POHYBU a popř. SMER_POHYBU. Na jejich základě pak vytvořte výstupy (KT).
vážení, já našel mnohem jednodušší řešení . Při každém otevření listu vložím příkazem daná tlačítka, o přesné velikosti na přesné místo. Pak se mi to sice rozháže, ale když daný list otevřu tak ejhle, tlačítko je na svém místě a funkční . Takže bez Openoffice
Tak to by mě docela zajímalo - co používáte za tlačítka - vložte přílohu, protože mi to jako jednodušší nepřipadá.
Mimochodem - rozházení tlačítek je široký pojem. Pokud máte ve windows nastavené zobrazení jinak než na 100%, tak si s tím excel neumí poradit a při poklepání se tlačítko zvětší (protože předpokládám, že když už se zobrazení mění, tak na více než 100% - většinou 125%). Při dnešních monitorech s velkým rozlišením je už téměř nutnost s touto možností počítat a například win 10 mi to nastavily automaticky a musel jsem si přenastavit zpět (raději si zvětšení nastavuji v aplikacích).
Toto řeším tak, že při každém klepnutí na tlačítko vždy nastavím jeho velikost na požadovanou (událost Click) - zatím jsem nic chytřejšího nevymyslel. Pokud někdo ano - sem s tím.
Asi je výsledok text a nie číslo
Vždycky to bude text, protože buď musíte použít CONCATENATE či & nebo HODNOTA.NA.TEXT (sl. TEXT). Všechno vrací text a jedině text jste schopen zalomit.
mno, on už to napsal přede mnou lubo ;))
a když se trošku zasoustředím - tak ten váš kód ještě trochu zredukuji ;))
Sub PChartsRefresh()
Sheets("KT-G").PivotTables(1).PivotCache.Refresh
End Sub
v podstatě bych ho vymazal úplně - pokud to není součást jiného většího projektu ;))
vtipné, děkuji za pobavení ;))
tyto balíky jsou rovnoprávné s balíkem od Microsoftu (umějí přinejmenším totéž)
přinejmenším si představuji jako, že umí to samé a ještě něco navíc. Protože s nimi nepracuji, můžete konkretizovat?
Jo mimochodem - všichni okamžitě opusťte windows a instalujte linux ;))
Co myslíte změnou?
Změnou dat - mně to funguje
Změna oblasti - musíte pořešit nebo nejlépe převeďte na tabulku (Vložení - Tabulka) a starat se o to nemusíte
Vypínáte pouze KT 1 a zapínáte pouze KT 2, takže tak (když to udělám "hloupě")
Sub PChartsRefresh()
Call VypnoutPrurez
Sheets("KT-G").PivotTables(1).RefreshTable
Call ZapnoutPrurez
End Sub
Sub VypnoutPrurez()
ActiveWorkbook.SlicerCaches("Průřez_Fakturace_Invoice").PivotTables.RemovePivotTable (ActiveSheet.PivotTables("Kontingenční tabulka 1"))
ActiveWorkbook.SlicerCaches("Průřez_Fakturace_Invoice").PivotTables.RemovePivotTable (ActiveSheet.PivotTables("Kontingenční tabulka 2"))
End Sub
Sub ZapnoutPrurez()
ActiveWorkbook.SlicerCaches("Průřez_Fakturace_Invoice").PivotTables.AddPivotTable (ActiveSheet.PivotTables("Kontingenční tabulka 1"))
ActiveWorkbook.SlicerCaches("Průřez_Fakturace_Invoice").PivotTables.AddPivotTable (ActiveSheet.PivotTables("Kontingenční tabulka 2"))
End Sub
Řekl bych, že toto je po vyhledávání nejčastější dotaz.
Dělejte to opačně. Vytvořte tabulku na 3tím listě a tu pak rozdělujte na ovoce a zeleninu (např KT) ...
Opravte mně někdo, jestli něco tvrdím špatně. V pivotích keškách nejsem úplně zorientovaný, zatím jsem se bez nich obešel a vím jen co potřebuji.
Pokud máte více kontingenčních tabulek založených na stejné oblasti dat, mají společnou cache (kdysi jsem viděl návod, jak to udělat, aby neměly - už nevím kde - nepovažoval jsem za užitečné). Takže pokud aktualizujete PivotChache - stačí aktualizovat jedenkrát - není potřeba projíždět cyklem. Takže v tom případě stačí pouze totoactivesheet.pivottables(1).pivotcache.refresha mám aktualizované všechny kt založené na stejné oblasti jako pt(1). Stejný efekt má activesheet.pivottables(1).refreshtable - protože mají společnou cache, aktualizují se mi všechny.
Jakmile jsem přidal druhou tabulku, tak mi ten váš úvodní kód ani neproběhl - nemám čas zjišťovat proč (Error 5 - invalid call argument - nebo tak něco). Takže si ani nepotvrdím podezření, že si problém způsobujete použítím ChangePivotCache + Create
A ani se mi nepodařilo nasimulovat váš problém - neprojevilo se mi.
Takže problém může být pouze v sešitu - nejdříve si zkuste vytvořit (nic nekopírovat - maximálně data) nový a v něm otestujte, jestli to bude dělat i v novém souboru.
Mno a pokud to bude dělat i nadále, tak záznamník maker mi uložil totoActiveWorkbook.SlicerCaches("Průřez_Produkt").PivotTables.RemovePivotTable (ActiveSheet.PivotTables("Kontingenční tabulka 4"))Takže s pomocí SlicerCaches by jste měl být schopen si napsat nějakou procedurku, která bude připojené tabulky řídit (doplňovat či odebírat)
Ne, Like bych nepoužil.
Na tohle je výborná funkce Filter.
Data: Na List1 v objektu Tabulka - vybírám první sloupec
Formulář: TextBox1 a ListBox1
Vše obslouží tento krátký kód (testováno asi 20s - rozlišuje velká a malá písmena)Dim sValues() As Variant
Private Sub UserForm_Initialize()
sValues = Application.Transpose(List1.ListObjects(1).ListColumns(1).Range.Value)
Me.ListBox1.List = sValues
End Sub
Private Sub TextBox1_Change()
Me.ListBox1.List = Filter(sValues, TextBox1.Text)
End SubPokud nechcete rozlišovat velká a malá Me.ListBox1.List = Filter(sValues, TextBox1.Text, , vbTextCompare)
Návod je tady
marjankaj napsal/a:
List "Matrika" je skrytý(veľmi skrytý ). Odkryť sa dá buď makrom alebo manuálne.
ALT+F11
posledná vlastnosť "Visible" zmeniť na -1.
Hehe, sedím v autobuse a nemám co dělat, tak napíšu taky jeden zbytečný.
AL dokáže napsat 'ošklivý' post, ale tenhle to není. Naopak je velmi přesný. Pokud jste programátor, tak určitě neustále hledáte na netu řešení. Mno a já vám dal vše, co potrebujete. Stačí vyhledat ta hesla... Otázka chvilky a budete mít řešení, kterému budete rozumět.
Vystupuju
To je zase zadání...
Použijte vyhledávací funkci (v případě problémů si opravíte sám). Musíte ji použít x-krát, podle toho, kolik sloupců má ten váš "řádek". Pokud to chcete vložit do jedné buňky, pak použijte CONCATENATE nebo &.
=KDYŽ(A(L27="Ne";NEBO(E27="DELTA";E27="OMEGA"));1;"")Pro podmíněné formátování stačí=A(L27="Ne";NEBO(E27="DELTA";E27="OMEGA"))
se dvěma monitory a dědečkem VBA je to veliká legrace - na problémy budete postupně přicházet
napřiklád tool tip se vždy otevře na hlavním monitoru, ikdyž je celý formulář na vedlejším
nebo další - ten váš kód, pokud si okno roztáhnete přes oba monitory (pokud máte excel 2013, tak už to asi nebudete potřebovat) - zobrazí se přesně půl na jednom a půl na druhém ;))
ono ani s tím vbe to není stoprocentní - ale ani po letech jsem tam zákonitost nevysledoval
částečně jsem většinu těchto problémů vyřešil pomocí api
Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.
Používáte podnikový systém Helios iNuvio? Potřebujete pomoci se správou nebo vyvinout SQL proceduru? Více informací naleznete na stránce Helios iNuvio.