Ok, to by šlo, jen to skrývání listů jsem dal ve chvíli uzavírání souboru. Pak se nestane, že na začátku někdo zakáže makra a listy zůstanou zobrazené.
Jen tam ještě přidat, aby soubor nešel po úpravách uložit, v případě, že byl otevřen bez hesla.
Možná jste začátečník, ale mnohem dál než já. Vzhledem k tomu, že vím co se dá dělat pomocí VBA v excelu. Tak smekám před každým co v něm umí něco vytvořit. I kdyby to byla sebemenší záležitost. Většinou se prokousávám jen tím co zrovna potřebuji. Hlavně co se nepoužívá, to se zapomene. Kolikrát už vím, že jsem to někde použil a nemohu si vzpomenout jak jsem to vytvořil.
Zrovna teď přemýšlím jak schovat listy (ZV, data, parametry). Soubor zahesluji pro úpravy a tyto listy potřebuji skrýt v případě, že bude použit jen pro čtení. Odkrýt při zadání hesla pro úpravu.
Dík, funguje jak má
Zdravím,
funguje to, jen jedna věc. Pokud použiji větší počet řádků (např. 4) a pak menší počet (např. 2). Tak mě to přepíše jen dva horní a spodní dva nechá původní. Chtělo by to aby se ten list nejdříve vymazal a pak znovu naplnil.
Funguje to perfektně. Jen jsem si upravil pozice buněk. Teď ještě aby se vytisklo více řádků. Pokud bych označil na listu3 více buněk (např. E34-E35), použily by se data z řádku 34 na listu3 v řádku 8 a řádek 35 na listu3 v řádku 9. Číslo zakázky by bylo společné.
Pokud by označení dvou a více řádků do bloku nebylo možné požít k určení dat k přenosu na list3. Napadlo mě, jestli by se dal použít sloupeček D k určení podmínky. Tím, že by se do něj napsal např. X. Pak by se přenášely data z řádků označených X.
Aha, omlouvám se za svou natvrdlost.
Excel 2003 uvádím jen pro to, že v novějších verzích jde spousta věcí snadněji.
Zdravím,
v práci mám Excel 2003. Bylo by reálné, vytvoření tlačítka, které by po kliknutí použilo data z aktivního řádku a otevřelo jiný list s předvyplněnými hodnotami tohoto řádku? Použilo by pouze některé buňky.
Kdyby to umělo i dva a více řádků naráz (třeba označené do bloku), byla by to bomba. Po označení více řádků by se otevřel jeden list, kde by bylo v hlavičce společné číslo zakázky a pak v řádcích vypsané díly včetně výrobních čísel.
stevas@seznam.cz
Mám 2003. Problém je v tom, že je u nás celkem běžný pohyb zaměstnanců mezi středisky. A jestli to dobře chápu, tak bych při změně zaměstnance za jiného, musel tabulku vytvářet znovu.:-( M.
No právě v tabulce je středisko KOM, ale někde to bere i jména z ostatních středisek. Přidal jsem si do tabulky i pole se střediskem (stejně jako měsíc). Aktualizoval tabulku a spustil makro. A pořád mě to tiskne i jména co vůbec v datech nejsou. odkud si to ty jména natahuje. Stahl jsem si ten soubor z netu a doplnil do něj to makro. A opět to tiskne lidi z jiných středisek. Tak nevím, kde jsou schovaný. Že je v datech nevidím, ale někde si je to makro najít muselo.
Já bych to i napsal, kdybych to věděl. Jen to tiskne všechny střediska. Ani sem nevěděl, že tam jsou. Potřeboval bych to ještě omezit na středisko KOM. Jinak super. Dík
Přikládám soubor. M.
Asi dělám něco špatně
Sub konti_tisk()
Dim i As Long
Dim a As PivotItem
Dim c As New Collection
Dim cc
Dim b As Boolean
Dim s As String
Dim Jméno As String
' ---------------------------------------------------------
PolozkaKontiTabulky = "Jméno" 'Uprav podle své tabulky !!!
' ---------------------------------------------------------
With ActiveSheet.PivotTables("Kontingenční tabulka 1")
' Vybuduji buffer možných jmen
For Each a In .PivotFields("Jméno").PivotItems
c.Add (a.Name)
Next a
b = True
For Each cc In c ' Nastavím první a ostatní skryji (jinak chyba)
.PivotFields("Jméno").PivotItems(cc).Visible = b ' Tady se mě to sekne
If b Then b = False
Next cc
s = ""
For Each cc In c ' Vytisknu
.PivotFields("Jméno").PivotItems(cc).Visible = True
If s <> "" Then
.PivotFields("Jméno").PivotItems(s).Visible = False
End If
' Ni`jak ji vytisknu
ActiveSheet.PrintOut
s = cc
'Debug.Print cc
Next cc
End With
Set c = Nothing
Set a = Nothing
End Sub
Zdravím, mám vytvořenou kontingenční tabulku (pro evidenci docházky z externích dat). V horní části mohu filtrovat podle jména, měsíce a roku. Pokouším se vymyslet způsob jak vytisknout všechny jednotlivé záznamy podle jména. Rok i měsíc si vyberu ručně a pak jsem se pokusil vytvořit makro aby mě vytisklo jednotlivé záznamy docházky, všech zaměstnanců hromadně. Ale nějak nemohu přijít na to, jak to do toho makra dostat, aniž bych tam nemusel vypisovat jmenovitě jednotlivé zaměstnance. Milan
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.