Databázove funkcie s overením

V tomto príklade si ukážeme, ako vytvoriť Pole so zoznamom obsahujúce záznamy, z ktorých si používateľ môže vybrať. Na obr. 1 máme časť databázy klientov u ktorých sledujeme napr. splácanie pôžičky, prípadne aj iné ukazovatele. (Databáza je zoznam súvisiacich údajov, v ktorom riadky súvisiacich informácií sú záznamy a stĺpce údajov sú polia.Prvý riadok zoznamu obsahuje menovky všetkých stĺpcov.) Na ďalší hárok zostavíme tabuľku podľa obr. 2.


Databáza

Výber

V riadku 1 sú zlúčené bunky v stĺpcoch A,B,C,D a E. Do tejto bunky zapíšeme nadpis "Meno". Potom zlúčime bunky A2:E3, klikneme do tejto zlúčenej bunky a potom na Údaje - overenie.

Overenie

V okne overenie (obr. 2a) zadáme v rubrike povoliť zoznam. V rubrike zdroj zapíšeme =Meno. Vtedy vytvoríme zoznam a vpravo u príslušnej bunky sa zobrazí trojuholník (obr. 2b).

Zoznam

Kliknutím na trojuholník zvolíme meno, ktoré potrebujeme, ale najprv aby sa vytvoril zoznam, a aby sme mohli zadať jednoduchšie vzorce s databázovými funkciami, definujeme názvy - kliknutím na vložiť - názov - definovať (obr, 2c). Vložíme tieto (alebo iné) názvy, ktoré potom použijeme vo vzorcoch:

Definovať názov

Tieto vzorce zapíšeme do buniek: Ako vyplýva z definície databázovej funkcie, DGET(databáza;pole;kritériá), ako databázu zadáme meno našej databázy, pole označuje, ktorý stĺpec funkcia používa, a za kritéria zadáme odkaz na bunky, v ktorých sú zapísané kritériá.

Funkcia

Funkcia

Funkcia

Obrázky 3,4,5 ilustrujú zápisy do oblasti A6:E6. Napokon do buniek A7 a B7 vložíme cez overenie zoznamy pre položku pôžička a pre položku percent a do bunky A9 zapíšeme: =">="&A7, do bunky B9 =">="&TEXT(B7;"0%"). Do buniek A13 a B13 vložíme zoznam operátorov (>, <, <=, >=), ktoré sú napr. v oblasti A20:A24 (tieto riadky môžeme skryť).
      Ďalší príklad ilustruje možnosť použitia databázových funkcií DSUM a DCOUNT ako aj možnosť zostavenia programu vo VBA. Na obr. 6 je v oblasti A9:C15 časť databázy. V bunke A6 (vzorec vidíte na obr. 8) je súčet výplat za práce, ktoré sú v neskrytých bunkách. Výsledok bol zapísaný spustením programu vo VBA - funkcie s menom Suma. V bunke A7 je počet všetkých neskrytých riadkov. Výsledok bol získaný spustením funkcie "Počet"
      V bunke D6 je databázová funkcia =DSUM(A9:C35;2;C1:C2), ktorá vráti súčet vyplatených súm za ozvučenie. Všimnite si, že kritériá sú zadané v bunkách C1:C2 (obr. 6).

Výber

Výber

Výber
' Cieľ   : Spočítanie hodnôt v oblasti buniek, ktoré sú v neskrytých riadkoch
Function Suma(oblast1 As Object)
Dim cell As Object
Dim total As Variant
' typ dát variant zaberá v pamäti 16 bytov
' a môže obsahovať rôzne typy údajov
For Each cell In oblast1                 ' cyklus pre oblast1
    If cell.Rows.Hidden = False Then            'ak riadok nie je skrytý
        If cell.Columns.Hidden = False Then    ' ak stĺpec nie je skrytý
            total = total + cell.Value          ' spočítávaj
        End If
    End If
Next
Suma = total            ' vráti súčet
End Function

Function Počet(oblast2 As Object)
Dim cell As Object
Dim toľko
For Each cell In oblast2        ' cyklus pre oblast2
      If cell.Rows.Hidden = False Then
        If cell.Columns.Hidden = False Then
                toľko = toľko + 1  ' počítaj len viditeľné bunky
        End If
     End If
Next
Počet = toľko ' vráti počet buniek
' spĺňajúce podmienky
End Function

Príklady si môžete stiahnuť.
Databázove funkcie.zip    Veľkosť: 21 kB
skryvat.zip    Veľkosť: 20 kB
Príklady boli vypracované v Excel 2000 pod OS Windows 98


Kontakty


Valid HTML 4.01 Transitional
Stránka je v súlade s aktuálnymi normami.
© Klára Mrázová