Ahoj Mirasi,
po delší době se zase hlásím, všechno funguje super. Potřeboval bych
ještě jednu "maličkost". Zkoušel jsem to sám, ale akorát jsem zjistil, že
ve VBA "Range" je "buňka" a to je asi tak všechno co jsem pochopil.
Těch záznámů v tabulce mam již skoro 600, prosím můžeš mi ještě
napsat "kód" na fitr k tomu sloupci, kam píšu datum zaplacení a jak mi
ty řádky potom "zešednou"?.
Potřeboval bych to tak, aby na listu byli 2 tlačítka: 1 tlač. = zaplacené,
2.tlač.=všechny. (příkazové tlačítko nebo přepínač???)
Vím, že by stačil "Automatický filtr", ale tento soubor přeposílám několika lidem a ti jsou rádi, že si alespoň ten soubor otevřou v poště
Dík
abc
Excel - podmíněné formátování II. (vyřešeno) Vyřešeno
Obávám se že ti nerozumím
Takže, na list přidáme dvě tlačítka a po stisknutí jednoho či druhého se má stát přesně co?
Veškerej kód už máš k dispozici. Obarvení řádku našedo je zařízený tou podmínkou
Tady se říká, že jestliže je hodnota daný buňky v aktuálním řádku různá (<>) od prázdnýho řetězce (""), řádek se obarví našedo a přejde se na další řádek. Pokud je ona buňka prázdná, začne se vyhodnocovat část "Else", kde už se barevně odlišujou různý města.
Btw: Range je oblast, buňka je Cell .
Takže, na list přidáme dvě tlačítka a po stisknutí jednoho či druhého se má stát přesně co?
Veškerej kód už máš k dispozici. Obarvení řádku našedo je zařízený tou podmínkou
If Cells(radek, "C").Value <> "" Then
Tady se říká, že jestliže je hodnota daný buňky v aktuálním řádku různá (<>) od prázdnýho řetězce (""), řádek se obarví našedo a přejde se na další řádek. Pokud je ona buňka prázdná, začne se vyhodnocovat část "Else", kde už se barevně odlišujou různý města.
Btw: Range je oblast, buňka je Cell .
-
- Pohlaví:
Excel - podmíněné formátování II.
No asi takhle,
všechno se "barví" jak má. Ale do toho kódu, potřebuju ještě někam
dopsat ten filtr. Takže:
1. tlačítko na listu = všechny řádky a je jedno jaká jsou to města a
zda je zaplaceno nebo není tj. vlastně to co mám teď - žádný filtr - vidim
všechny řádky >>> takže 1.tlačítko = zrušení filtru.
2.tlačítko na listu = filtr, pouze nezaplacené, tj. zobrazí se pouze řádky obarvené podle měst = filtr na nezaplacené.
Možná že to "dělá" "AdvancedFilter"
všechno se "barví" jak má. Ale do toho kódu, potřebuju ještě někam
dopsat ten filtr. Takže:
1. tlačítko na listu = všechny řádky a je jedno jaká jsou to města a
zda je zaplaceno nebo není tj. vlastně to co mám teď - žádný filtr - vidim
všechny řádky >>> takže 1.tlačítko = zrušení filtru.
2.tlačítko na listu = filtr, pouze nezaplacené, tj. zobrazí se pouze řádky obarvené podle měst = filtr na nezaplacené.
Možná že to "dělá" "AdvancedFilter"
Vyřešeno
Tady bych mohl pomoct, ale protože neznám tvoji tabulku, budeš si to muset změnit podle tvé struktury.
Nejdříve si vytvoř tlačítko pomocí nabídky Ovládací prvky (pozor, ne pomocí Formuláře) a klikem pravého myšítka na tlačítku zobraz podmenu. Vyber Vlastnosti a změň položky (Name) a Caption.
(Name) je interní název Excelu, se kterým pracuje a Caption je text v tlačítku. Stejným způsobem vytvoř druhé tlačítko. Já jsem použil tyto názvy:
tlačítko 1 - (Name) = AllButton, Caption = Všechny
tlačítko 2 - (Name) = EmptyButton, Caption = Nezaplacené
Potom se přepni do Visual Basicu do listu, kde máš tu tabulku. Nedávej to modulu, kde máš ostatní makra).
V tomto případě je to list se jménem Data (List 2 je znova interní název Excelu).
Do sekce pro psaní kódu napiš tyhle makra:
Pak si musíš upravit toto:
1. Předpokládám, že tabulku neustále upravuješ, proto je tu proměnná konec, do které se uloží číslo posledního řádku tabulky. Ale do kódu Range("A2").End(xlDown).Row musíš místo A2 dát adresu první buňky ve sloupci tabulky, kde nejsou prázdné buňky - pokud by v tomto sloupci byla nějaká buňka prázdná (nevyplněná data), tak by první prázdná buňka, kterou najde, byla pro něj konec tabulky. Předpokládám, že máš takový sloupec (např. datum nebo číslo faktury nebo něco jiného).
Díky tomuto opatření se nebudeš muset starat, kolik řádků máš v tabulce, protože si vždy najde poslední řádek.
2. V kódu Set bunka = Range("Q3") dej namísto Q3 první buňku ve sloupci, kde máš datum zaplacení (nesmí to být hlavička, ale první řádek, kde má být napsána hodnota). Projde celou tabulku a skryje všechny řádky, kde je nějaký datum.
Pokud bys měl s něčím problém, tak mi můžeš poslat ukázku tvojí tabulky s vymyšlenýmy daty a já to upravím přímo pro tebe.
Nejdříve si vytvoř tlačítko pomocí nabídky Ovládací prvky (pozor, ne pomocí Formuláře) a klikem pravého myšítka na tlačítku zobraz podmenu. Vyber Vlastnosti a změň položky (Name) a Caption.
(Name) je interní název Excelu, se kterým pracuje a Caption je text v tlačítku. Stejným způsobem vytvoř druhé tlačítko. Já jsem použil tyto názvy:
tlačítko 1 - (Name) = AllButton, Caption = Všechny
tlačítko 2 - (Name) = EmptyButton, Caption = Nezaplacené
Potom se přepni do Visual Basicu do listu, kde máš tu tabulku. Nedávej to modulu, kde máš ostatní makra).
V tomto případě je to list se jménem Data (List 2 je znova interní název Excelu).
Do sekce pro psaní kódu napiš tyhle makra:
Pak si musíš upravit toto:
1. Předpokládám, že tabulku neustále upravuješ, proto je tu proměnná konec, do které se uloží číslo posledního řádku tabulky. Ale do kódu Range("A2").End(xlDown).Row musíš místo A2 dát adresu první buňky ve sloupci tabulky, kde nejsou prázdné buňky - pokud by v tomto sloupci byla nějaká buňka prázdná (nevyplněná data), tak by první prázdná buňka, kterou najde, byla pro něj konec tabulky. Předpokládám, že máš takový sloupec (např. datum nebo číslo faktury nebo něco jiného).
Díky tomuto opatření se nebudeš muset starat, kolik řádků máš v tabulce, protože si vždy najde poslední řádek.
2. V kódu Set bunka = Range("Q3") dej namísto Q3 první buňku ve sloupci, kde máš datum zaplacení (nesmí to být hlavička, ale první řádek, kde má být napsána hodnota). Projde celou tabulku a skryje všechny řádky, kde je nějaký datum.
Pokud bys měl s něčím problém, tak mi můžeš poslat ukázku tvojí tabulky s vymyšlenýmy daty a já to upravím přímo pro tebe.
Naposledy upravil(a) mikel dne 05 zář 2005 08:17, celkem upraveno 1 x.
Znáte pravidla?
Tipy a triky ve Windows XP
Návody: HijackThis, MWAV, CCleaner (THX to mijaja)
Problémy, které chcete vyřešit pište sem do fóra. Neposílejte je emailem ani po ICQ!
Tipy a triky ve Windows XP
Návody: HijackThis, MWAV, CCleaner (THX to mijaja)
Problémy, které chcete vyřešit pište sem do fóra. Neposílejte je emailem ani po ICQ!
2mikel: Jedná se o to, že user abc je "starý známý", se kterým sem jedno makro řešil už kdysi dávno, to si tu ješte ani nebyl registrovanej
Původní problém je tady
2abc: Mám teď minimum času, ani neprozkoumám co mikelův kód provádí, ale jestli to není to co bylo potřeba a mikel si projde můj výtvor, určitě bude lehce schopnej ho poupravit, případně napsat zcela znovu
Ja bych na to mrknul (možná) o víkendu.
-----------------
Poznámka pod čarou. Teď nedávno sem zjistil jak přidávat položky do menu, vypadá to mnohem líp jak tlačítka, strašně se mě to líbí a všude to používám
V případě že už je těch položek na listu hodně, nechala by se práce zrychlit (podstatně), nastavením vlastnosti ScreenUpdating na False.
Původní problém je tady
2abc: Mám teď minimum času, ani neprozkoumám co mikelův kód provádí, ale jestli to není to co bylo potřeba a mikel si projde můj výtvor, určitě bude lehce schopnej ho poupravit, případně napsat zcela znovu
Ja bych na to mrknul (možná) o víkendu.
-----------------
Poznámka pod čarou. Teď nedávno sem zjistil jak přidávat položky do menu, vypadá to mnohem líp jak tlačítka, strašně se mě to líbí a všude to používám
Kód: Vybrat vše
Private Sub Workbook_Open()
Application.Caption = "Titulek vpravo nahore"
With Application.MenuBars(xlWorksheet)
With .Menus.Add("Novy &menu")
.MenuItems.Add Caption:="Nejaky &Podmenu", OnAction:="Procedura"
End With
End With
End Sub
V případě že už je těch položek na listu hodně, nechala by se práce zrychlit (podstatně), nastavením vlastnosti ScreenUpdating na False.
Tak díky mirasovi jsem to mohl předělat na původní tabulku. A jak miras předpokládal, nedalo mi to a pohrál jsem si i s původním makrem na obarvování měst.
Postup je stejný, jak jsem popsal v předchozím příspěvku - začni s vytvořením tlačítek u tabulky (nejlepší to bude v prvním řádku u názvu tabulky). Změň jména tlačítek, jak jsem tam popsal a navíc na té samé kartě s vlastnostmi je položka PrintObject. když její hodnotu změníš na False, tak se tlačítka nebudou tisknout.
Pak se přepni do Visual Basicu a vyber si ve objektové struktuře tvého souboru list s tabulkou. Jak je vidět na obrázku vlevo, tabulka je na listu s názvem List1 (zeleně podsvícen) a tam je třeba napsat všechna makra.
Zelené texty jsou jenom vysvětlivky, které nemusíš přepisovat.
První makro je to přepracované původní makro. Aby mohlo fungovat, musíš mít list s názvem List2, na kterém si ve sloupci A napíšeš města, která používáš a označíš si je barvou, jakou na ně chceš použít (viz obrázek).
Když v tabulce na Listu1 napíšeš nové město, makro si ho najde v seznamu na Listu2 a obarví řádek tabulky nadefinovanou barvou. Tento List2 můžeš skrýt, aby nebyl viditelný. Uděláš to v menu Formát/List/Skrýt a znova ho zobrazíš podobně - Formát/List/Zobrazit (nabídně ti seznam skrytých listů a ty si vybereš ten, který chceš zobrazit). Tak ostatní uživatelé neuvidí tento list a ty, když budeš chtít přidat nějaké město do seznamu, tak si ho zobrazíš, přidáš město a znova skryješ.
Pokud se ti nechce měnit mirasovo makro, tak si přepiš pouze 2. a 3.makro.
Postup je stejný, jak jsem popsal v předchozím příspěvku - začni s vytvořením tlačítek u tabulky (nejlepší to bude v prvním řádku u názvu tabulky). Změň jména tlačítek, jak jsem tam popsal a navíc na té samé kartě s vlastnostmi je položka PrintObject. když její hodnotu změníš na False, tak se tlačítka nebudou tisknout.
Pak se přepni do Visual Basicu a vyber si ve objektové struktuře tvého souboru list s tabulkou. Jak je vidět na obrázku vlevo, tabulka je na listu s názvem List1 (zeleně podsvícen) a tam je třeba napsat všechna makra.
Zelené texty jsou jenom vysvětlivky, které nemusíš přepisovat.
První makro je to přepracované původní makro. Aby mohlo fungovat, musíš mít list s názvem List2, na kterém si ve sloupci A napíšeš města, která používáš a označíš si je barvou, jakou na ně chceš použít (viz obrázek).
Když v tabulce na Listu1 napíšeš nové město, makro si ho najde v seznamu na Listu2 a obarví řádek tabulky nadefinovanou barvou. Tento List2 můžeš skrýt, aby nebyl viditelný. Uděláš to v menu Formát/List/Skrýt a znova ho zobrazíš podobně - Formát/List/Zobrazit (nabídně ti seznam skrytých listů a ty si vybereš ten, který chceš zobrazit). Tak ostatní uživatelé neuvidí tento list a ty, když budeš chtít přidat nějaké město do seznamu, tak si ho zobrazíš, přidáš město a znova skryješ.
Pokud se ti nechce měnit mirasovo makro, tak si přepiš pouze 2. a 3.makro.
Naposledy upravil(a) mikel dne 04 zář 2005 14:51, celkem upraveno 1 x.
Znáte pravidla?
Tipy a triky ve Windows XP
Návody: HijackThis, MWAV, CCleaner (THX to mijaja)
Problémy, které chcete vyřešit pište sem do fóra. Neposílejte je emailem ani po ICQ!
Tipy a triky ve Windows XP
Návody: HijackThis, MWAV, CCleaner (THX to mijaja)
Problémy, které chcete vyřešit pište sem do fóra. Neposílejte je emailem ani po ICQ!
2miras: taky používám tento způsob, ale jako vždy, mám to makro napsáno trodhu jinak. Tady je ukázka:
A takhle vypadá výsledek:
Navíc mám tyto makra uložené jako doplněk MS Excel, takže se mi otevřou automaticky při spuštění Excelu ve skrytém tvaru a můžu je kdykoliv použít.
P.S. Pro úplnost, kdyby někoho zarazilo, že se toto makro nemůže spustit automaticky při otevření souboru (díky použití jako doplňku je to fakticky při startu Excelu) mám v objektu ThisWorkbook toto makro:
Private Sub Workbook_Open()
CreateMenu
End Sub
A takhle vypadá výsledek:
Navíc mám tyto makra uložené jako doplněk MS Excel, takže se mi otevřou automaticky při spuštění Excelu ve skrytém tvaru a můžu je kdykoliv použít.
P.S. Pro úplnost, kdyby někoho zarazilo, že se toto makro nemůže spustit automaticky při otevření souboru (díky použití jako doplňku je to fakticky při startu Excelu) mám v objektu ThisWorkbook toto makro:
Private Sub Workbook_Open()
CreateMenu
End Sub
Znáte pravidla?
Tipy a triky ve Windows XP
Návody: HijackThis, MWAV, CCleaner (THX to mijaja)
Problémy, které chcete vyřešit pište sem do fóra. Neposílejte je emailem ani po ICQ!
Tipy a triky ve Windows XP
Návody: HijackThis, MWAV, CCleaner (THX to mijaja)
Problémy, které chcete vyřešit pište sem do fóra. Neposílejte je emailem ani po ICQ!
-
- Pohlaví:
Excel - Podmíněné formátování II.
Mikeli, můžeš ty makra do zprávy vložit ještě jednou, já vidim místo obrázku akorát ty "křížky" (http://das-konsult.cz/forum/album_pic.php?pic_id=343), nebo jako to vkládá Miras... Dík
Nevím, proč ti to nešlo zobrazit. Možná proto, že jako neregistrovaný uživatel nemůžeš zobrazit obrázky, které mám v osobní galerii?
Tak jsem je nakopíroval do Veřejné kategorie a změnil jsem na ně odkazy v příspěvku.
Doufám, že to teď půjde.
Tak jsem je nakopíroval do Veřejné kategorie a změnil jsem na ně odkazy v příspěvku.
Doufám, že to teď půjde.
Znáte pravidla?
Tipy a triky ve Windows XP
Návody: HijackThis, MWAV, CCleaner (THX to mijaja)
Problémy, které chcete vyřešit pište sem do fóra. Neposílejte je emailem ani po ICQ!
Tipy a triky ve Windows XP
Návody: HijackThis, MWAV, CCleaner (THX to mijaja)
Problémy, které chcete vyřešit pište sem do fóra. Neposílejte je emailem ani po ICQ!
mikel píše:Možná proto, že jako neregistrovaný uživatel nemůžeš zobrazit obrázky, které mám v osobní galerii?
Ano, je to tak, neregistrovaní nemůžou zobrazit obrázky z osobních galerií.
Krom toho v osobní galerii je omezenej počet obrázků, nevím přesně, ale je to míň jak 20. Doporučení zní do osobní galeri umísťovat obrázky jen v odůvodněných případech a s rozmyslem
Tak dobře, přehodil jsem obrázky do veřejné kategorie a upravil příspěvky. Ale makro pro vytvoření nového menu v Excelu jsem nechal v osobní galerii, ať mají registrovaní uživatelé nějakou výhodu.
Znáte pravidla?
Tipy a triky ve Windows XP
Návody: HijackThis, MWAV, CCleaner (THX to mijaja)
Problémy, které chcete vyřešit pište sem do fóra. Neposílejte je emailem ani po ICQ!
Tipy a triky ve Windows XP
Návody: HijackThis, MWAV, CCleaner (THX to mijaja)
Problémy, které chcete vyřešit pište sem do fóra. Neposílejte je emailem ani po ICQ!
-
- Mohlo by vás zajímat
- Odpovědi
- Zobrazení
- Poslední příspěvek
-
- 7
- 1913
-
od veselypettr
Zobrazit poslední příspěvek
31 kvě 2023 14:00
-
-
Formatování SD karty
od P. Sedlacek » 18 kvě 2023 14:27 » v Mobily, tablety a jiná přenosná zařízení - 7
- 1530
-
od mmmartin
Zobrazit poslední příspěvek
19 kvě 2023 10:07
-
-
- 11
- 1191
-
od Cemada
Zobrazit poslední příspěvek
06 čer 2023 13:07
-
- 16
- 6327
-
od mirekol
Zobrazit poslední příspěvek
20 říj 2023 08:31
-
- 3
- 2018
-
od Story-Long
Zobrazit poslední příspěvek
14 srp 2023 10:11
Kdo je online
Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 7 hostů