

Podmíněné formátování v Excelu
Dobrý den,
potřebovala bych poradit ohledně podmíněného formátování.
Chtěla bych, aby Excel označil všechny sumy (buňky, ve kterých je funkce SUMA) třeba červeně.
Jde to? Pokud ano, jak? Děkuji za odpověď.
Zkus nastavit podmíněné formátování na základě funkce. Použij funkci =FormulaText(), která převede vzorec na text a před tím funkci, která zjistí, zda takto převedený vozrec obsahuje "SUMA"
Mám Excel 2007 a funkce FormulaText mi bohužel nefunguje..
Funkce Formulatext je dostupná v excelu verze 2013. Do starších verzí si ji můžeš snadno "přidat" pomocí VBA. Editor VBA se otevře ALT+F11.
watch
Edit: přidán soubor
Jak poznám, že se mi ta funkce podařila do Excelu vložit? Postupovala jsem podle videa, ale nezobrazí se mi ta tabulka, co je v 0:51. Nevím, jestli ten příkaz mám nějak uložit. Zkoušela jsem pak tu funkci, ale pořád mi to píše chybu - #NÁZEV?
Vezmu to od začátku. Otevřeš sešit excelu, stisknutím ALT+F11 otevřeš editor VBA do kterého přepíšeš ten kód z videa a editor zavřeš křížkem, tím je vlastní funkce dostupná. Tabulku co je vidět v 0:51 neřeš, je to jen ono otevřených aplikací. V sešitu napíšeš =FT (tak se jmenuje nová funkce, pokud si stáhneš soubor co sem přiložil, funkce je tam dostupná pod názvem =FormulaText).
Pro funkčnost vlastních funkcí je však nutné mít povolená makra!
Paráda, děkuji.
Nejprve mi to nešlo, protože jsem pořád zadávala FormulaText a ne FT. Pak jsem zjistila, že byl soubor uložen jako ods, a i když jsem ho uložila jako soubor Excelu s podporou maker, nešlo to. Musela jsem otevřít nový sešit Excelu a data zkopírovat.
Ještě jsem se chtěla zeptat - bude tato funkce fungovat ve všech sešitech Excelu nebo ji musím vždycky vložit přes editor? Jak docílím toho, aby fungovala všude?
Pokud tuto funkci nebudeš využívat "masově" stačí si ji nakopírovat přes editor vba do konkrétního sešitu.
Excel používá tzv. Osobní sešit maker (Personal.xlsb), který je skrytý někde v uživatelském profilu. Dají se do něj ukládat makra, která jsou potom dostupná ve všech sešitech, ale jestli se toto týká i vlastních funkcí netuším. Nikdy jsem to nepotřeboval.
Další možností by bylo (a to mám vyzkoušené) soubor s vlastní funkcí uložit jako doplněk (*.xlam).
Tento doplněk uložit někam do vhodné složky, aby nebyl na ráně a nějaký aktivista ho nesmazal.
Potom stačí na tento doplněk excel navést: Tl. office -> možnosti -> doplňky -> spravovat doplňky aplikace excel - tlačítko přejít -> procházet -> nyní vyhledat soubor s doplňkem *.xlam a ok.
Vlastní funkce bude dostupná ve všech sešitech na tomto konkrétním PC.
Zkusila jsem to udělat přes ten *.xlam. Otevřela jsem si nový sešit Excelu, přes editor jsem vložila novou funkci a sešit uložila jako *xlam. Pak jsem postupovala stejně, jako jsi psal. Otevřela jsem nový sešit Excelu, klikla na Office - Možnosti - Doplňky - Přejít - Procházet (našla jsem ten *.xlam, dala Otevřít) - zašktla jsem ho v seznamu doplňků - dala OK. V tom otevřeném sešitu jsem chtěla funkci zkusit, napsala jsem =FT, ale funkce nefunguje, nabízí mi to FTEST. Kde jsem udělala chybu?
Ahoj, je pravda, že když sem to testoval bylo to na excelu verze 2010, kde se vlastní funkce zobrazila v roletce.
![[http://pc.poradna.net/file/view/19787-excel2010-pn g]](/file/view/19787-excel2010-png)
V excelu verze 2007 se to však neděje, proto se Ti zobrazuje pouze FTEST avšak vlastní funkce je PLNĚ FUNKČNÍ!
Vyzkoušeno. Nekoukej na to, že se Ti vlastní funkce nezobrazuje na roletce a klidně ji použij.
Jako kontrolu si otevři nový sešit a podívej se do editoru maker (ALT+F11), uvidíš že tam vlastní fce bude zapsána.
Ještě jedna technická pokud používáš český excel, vlastní fce vrací anglické názvy funkcí (ve vzorci máš =KDYŽ vlastní fce vrátí =IF). Pokud bys chtěla české názvy ve vlastní funkci:
Siki, ako prosím ťa, vkladáš ten kód do odpovede takou formou, ako to máš aj tu?
Ja to kopírujem ako blok z VBA, ale sem mi to potom vloží ako text bez odsadení a pod...
Dík
kód vba vkládám do tagu (code) .. (/code) pomocí tlačítka viz obr.
![[http://pc.poradna.net/file/view/19788-odp-png]](/file/view/19788-odp-png)
díky ;)
Jsem blb. Funguje to, jen se funkce nezobrazuje v nabídce. Děkuji moc.
Ty české/anglické názvy mě ani nenapadly, protože jsem funkci používala jen k podmíněnému formátování. Je to ale zajímavé. Ten příkaz mám vložit do editoru vba pod ten starý příkaz s funkcí FT nebo mám otevřít v editoru nový modul a vložit ho tam?
Neviděl bych to tak sebekriticky
, taky mě nenapadlo, že se to bude ve verzi 2007 chovat odlišně od 2010. Pokud Ti nevadí, že vlastní funkce vrací anglické názvy tak si můžeš ponechat doplněk beze změn. Pokud bys chtěla používat funkci jen s "češtinou" tak bych stávající doplněk smazal a vytvořil nový s výše zmíněným kódem. Pokud bys chtěla používat obě verze (cz i en) současně opět bych odstranil současný doplněk a vytvořil nový s tímto kódem:
Jediný rozdíl v "CZ verzi" je to slovíčko Local - FTCZ = Bunka.FormulaLocal
Ty jo, to je složité. Zatím si tam nechám ten původní doplněk a uvidím časem, co budu potřebovat. Děkuji ti moc, ani jsem netušila, že lze do Excelu dodávat funkce a upravovat je tak, jak potřebuješ. Ještě jednou děkuji