dnes je 27.7.2024

Input:

Excel 2007: Makra - Praktická ukázka - 10. část

3.9.2010, , Zdroj: Verlag Dashöfer

Pokračujeme dalšími makry, která budeme potřebovat pro vytvoření manažerské sestavy 30-60-90.

Otevřeme si rozpracovaný sešit 30-60-90.xlsm. Máme v něm již naimportovaná data, ze kterých budeme sestavu vytvářet. Také na listě Tlačítka jsme si umístili tlačítko Aktualizace dat, které v budoucnosti můžeme využívat pro načtení nových dat ze souboru faktury.csv (pokaždé, když tento soubor bude změněn).

Další makro, které použijeme pro zpracování sestavy, nám do tabulky doplní počet dní po splatnosti. Toto makro již jsme si vysvětlili v 5. díle našeho seriálu o makrech.  Známe již také možnost importu maker, proto si stáhneme soubor po_splatnosti.bas.  Ten si uložíme na pevný disk a do našeho rozpracovaného souboru jej naimportujeme pomocí nabídky Vývojář – Kód – VisualBasic. V okně VisualBasicu použijeme nabídku File – Import File. Nalistujeme soubor po_splatnosti.bas a dialogové okno potvrdíme tlačítkem Otevřít.

Zdrojový kód makra doplníme v prvním řádku o příkaz Sheets("data").Select.  Tím zajistíme, že makro bude skutečně spuštěno na listě Data, pokud by uživatel při práci se souborem např. nechtěně přepnul na jiný list.

Makro tedy doplní do tabulky na listě Data do buňky G1 nadpis Po splatnosti, v buňce G2 vytvoří  vzorec =KDYŽ(F2=0;DNES()-E2;" "), zkopíruje tento vzorec do celého sloupce G.

Přejdeme na list tlačítka, kde si vytvoříme tlačítko pro vyvolání makra. Způsob již známe – v nabídce Vývojář – Ovládací prvky – Vložit potvrdíme z grafické nabídky ikonu Tlačítko a šikmým tahem nakreslíme tlačítko. Otevře se dialogové okno Přiřadit makro, ze seznamu vybereme makro po_splatnosti a potvrdíme tlačítko OK. Označíme text na tlačítku a přepíšeme je naším vlastním textem – např. Počet dní po splatnosti.

Makro tedy vyčíslilo u každé z nezaplacených faktur, kolik dní je po splatnosti. Zatím máme na listě data pohromadě jak zaplacené, tak i nezaplacené faktury. Zaplacených si již nemusíme všímat, takže účelem dalšího makra bude vytvoření tabulky,

Nahrávám...
Nahrávám...