Funkcia INDIRECT vráti odkaz určený textovým reťazcom. Syntax tejto funkcie:
indirect(odkaz;true/false). Ak je uvedené TRUE
(pravda) alebo nie je zadané nič, odkaz sa interpretuje ako odkaz typu A1.
Ak je uvedené FALSE (nepravda), odkaz sa interpretuje ako odkaz typu R1C1.
Textový reťazec môže byť aj meno hárku (listu). Uvediem jeden príklad zo
štatistiky - časť prehľadu o hospodárení hl. mesta ČR Prahy.
Máme napr. k dispozícii prehľad o hospodárení za roky 1997, 1998 a 1999.
Tieto sú v hárkoch pomenovaných R1997, R1998, R1999. Hárok s údajmi za rok 1999
je ukázaný na obrázku.
V hárku pomenovanom Spolu, chceme mať príjmy
spolu pre všetky ukazovatele za uvedené roky. Je viacero spôsobov, ako dosiahnúť
želaný výsledok. Jeden z nich je použitie funkcie indirect.
Zvolíme bunky (v tomto príklade B1, C1 a D1),
v ktorých uvedieme názvy jednotlivých hárkov (listov) z ktorých
chceme spočítavať jednotlivé sumy. Do bunky B3 vložíme funkciu
indirect s odkazom na bunku B1 a absolútnu adresu
oblasti, v ktorej sa nachádzajú sumy, ktoré treba spočítať:
=SUM(INDIRECT(B1&"!$B$3:$B$7")).
Potom už len potiahneme za úchytku bunky až do stĺpca D.
Niektoré údaje boli čerpané z: Statistická ročenka 2000 NUMERI PRAGENSIS.
Český statistický úřad, 2000.
Podmienené formátovanie pre vzorce
Ak chcete vizuálne odlíšiť bunky v ktorých sú vzorce, prípadne aj vzorce s funkciami, použite
podmienené formátovanie. V tabuľke, kde máte vzorce, je treba najprv vložiť názov
CellHasFormula
a do rubriky pre odkaz natypovať
=GET.CELL(48,INDIRECT("rc",FALSE)).
Funkcia GET.CELL je funkciou, ktorá sa používala v makrách Excelu 4. V tabuľkách Excelu
2000 sa môže použiť iba nepriamo, napr.
Public Sub Stmakro()
Worksheets(1).Activate
Range("A3").Select
MsgBox ExecuteExcel4Macro("GET.CELL(48)")
End Sub
Aargument 48 vo fiunkcii GET.CELL znamená, že ak je v bunke A3 vzorec, funkcia
vráti TRUE, ak nie, FALSE.
Potom vysvieťte bunky so vzorcami - v tomto prípade oblasť A2:A3.
Kliknite v hlavnom menu na Formát a zvoľte podmienené formátovanie.
Zvoľte prvú podmienku - vzorec, a zapíšte do
vedľajšej rubriky CellHasFormula tak ako to vidíte na obrázku.
Finančné funkcie - pôžičky
V bankovníctve sa veľmi často stretávame s finančnými funkciami,
pri rôznych typoch úrokovania, pri výpočtoch diskontu, pri obchodovaní s cennými papiermi
a v iných oblastiach. Označenia jednotlivých finančných funkcií vychádzajú z anglickej
terminológie. V tabuľke uvádzam niektoré, často používané finančné funkcie:
Ak si chcete požičať z banky pol milióna Kč napr. na kúpu bytu, a chcete ich
splácať 20 rokov, pri úrokovej miere 16,5 percent, môžete si sami vypočítať, aká bude napr.
celá výška splátky a iné dôležité parametre, ktoré ukazuje obrázok. Vo všetkých finančných
funkciách predstavujú kladné čiastky príjmy a záporné čiastky výdaje (v tomto prípade
z pohľadu klienta). Treba si uvedomiť, že pôžička sa obvykle spláca po mesiaci a teda vo
vzorcoch je treba za NPER dosadiť mesiace, v uvedenom príklade 20*12=240.
Na obrázku vidíme splátky za 1, 2, 3 mesiac a potom za mesiace 239 a 240..
Najprv napíšeme čísla období do buniek A5 a A6 a spustíme makro Vypln().
Ďalej treba napísať vzorce s funkciami (podľa obrázka) a to do bunky B5 a C5 ,
tieto potom vysvietiť a potiahnutím za úchytku bunky C5 doplníme vzorce do dalšieho riadku.
Všimnite si, kde treba zapísať absolútnu adresu bunky, a bunky pre nesplatený zostatok,
t. j. bunky D5 a D6. Keď tieto máme vyplnené, môžeme spustiť makro Vyplnit().
Sub Vypln()
Range("A5:A6").Select
Selection.AutoFill Destination:=Range("A5:A244"), Type:=xlFillDefault
Range("A5:A244").Select
End Sub
Sub Vyplnit()
Selection.AutoFill Destination:=Range("B6:D244"), Type:=xlFillDefault
End Sub
Zdroje: Statistická ročenka 2000. Český statistický úřad, 2000.