Vsebina
Kazalo 🔎︎

# Ukaz Dim

Deklarira spremenljivko ali polje.

Če so spremenljivke med seboj ločene z vejicami (npr. DIM sPar1, sPar2, sPar3 AS STRING), je mogoče tako definirati samo spremenljivke vrste Variant. Uporabljajte za vsako spremenljivko svojo vrstico.

    Dim sPar1 As String
    Dim sPar2 As String
    Dim sPar3 As String

Dim deklarira lokalne spremenljivke znotraj podprogramov. Globalne spremenljivke se deklarira z ukazoma PUBLIC ali PRIVATE.

## Skladnja:

    [ReDim]Dim ImeSpr [(začetek To konec)] [As SprVrsta][, ImeSpr2 [(začetek To konec)] [As SprVrsta][,...]]

## Parametri:

ImeSpr: poljubno ime za spremenljivko ali polje.

Začetek, konec: numerične vrednosti ali konstante, ki določajo število elementov (število elementov=(konec-začetek)+1) in obseg indeksa.

Začetek in konec sta lahko numerična izraza, če se na ravni procedure uporabi ukaz ReDim.

SprVrsta: ključna beseda, s katero se definira vrsta spremenljivke.

Ključna beseda: vrsta spremenljivke

Bool: Boolova spremenljivka (Res, Ni Res)

Currency: spremenljivka v denarnih enotah (s 4 decimalnimi mesti)

Date: spremenljivka vrste Date

Double: spremenljivka v plavajoči vejici dvojne dolžine (1,79769313486232 x 10E308 - 4,94065645841247 x 10E-324)

Integer: cela spremenljivka (-32768 - 32767)

Long: dolga cela spremenljivka (-2.147.483.648 - 2.147.483.647)

Object: spremenljivka vrste Object (predmet; Opomba: to spremenljivko je mogoče definirati samo z ukazom Set!)

Single: spremenljivka v plavajoči vejici enojne dolžine (3,402823 x 10E308 - 1,401298 x 10E-45)

String: Spremenljivka vrste String (niz) lahko vsebuje največ do 64,000 znakov ASCII.

[Variant]: spremenljivka vrste Variant (vsebuje vse vrste, navedene v definiciji). Če ključna beseda ni uporabljena, se spremenljivke samodejno obravnava kot vrste Variant, razen če program ne uporablja ukazov od DefBool do DefVar.

V LibreOffice Basic spremenljivk ni potrebno deklarirati eksplicitno. Če pa hočete uporabiti polje, ga morate predhodno deklarirati. Spremenljivko lahko deklarirate z ukazom Dim, pri čemer z vejicami ločite večkratne deklaracije med seboj. Če želite deklarirati vrsto spremenljivke, uporabite znak za vrsto deklaracije in ime za njim, ali pa ustrezno ključno besedo.

LibreOffice Basic podpira polja z eno ali več dimenzijami, ki so definirati za navedeno vrsto spremenljivk. Polja so primerna pomoč pri delu v programih, ki vsebujejo sezname ali pa tabele, s katerimi želite računati. Prednost polj je v tem, da lahko vedno pridete do posameznih elementov polj s pomočjo indeksov, ki jih formulirate v obliki numeričnih izrazov ali s pomočjo spremenljivk.

Polja deklariramo z ukazom Dim. Za definicijo obsega indeksa sta na voljo dve metodi:

DIM besedilo(20) as String REM 21 elementov, od 0 do 20

DIM besedilo(5 to 25) as String REM 21 elementov, od 5 do 25

DIM besedilo(-15 to 5) as String REM 21 elementov (vključno z 0)

REM oštevilčeni so od -15 do 5

Dvodimenzionalno polje

DIM text(20,2) as String REM 63 elementov; od 0 do 20 raven 1, od 0 do 2 raven 2 in od 0 do 20 raven 3

Polje lahko deklarirate dinamično, s tem da v ukazu ReDim ukazom navedete dimenzije za podprogram ali funkcijo, ki to polje uporabljata. Na splošno lahko dimenzije za polje določite samo enkrat in jih po tem ne morete več spreminjati. Znotraj podprograma lahko polje definirate z ReDim. Dimenzije se da definirati samo z numeričnimi izrazi. Tako je zagotovljeno, da so polja samo tako velika, kot je potrebno.

## Primer:

    Sub ExampleDim1
    Dim sVar As String
    Dim iVar As Integer
        sVar = "Pisarna"
    End Sub

    Sub ExampleDim2
    ' Dvodimenzionalno polje
    Dim stext(20,2) As String
    Const sDim As String = " Dimenzija:"
    For i = 0 To 20
        For ii = 0 To 2
            stext(i,ii) = str(i) & sDim & str(ii)
        Next ii
    Next i
    For i = 0 To 20
        For ii = 0 To 2
            MsgBox stext(i,ii)
        Next ii
    Next i
    End Sub