ReDim Statement

Kirjeldab muutujat vÔi massiivi.

SĂŒntaks:


[ReDim]Dim VarName [(start To end)] [As VarType][, VarName2 [(start To end)] [As VarType][,...]]

Vajadusel saad ĂŒmbermÔÔtmestatud massiivi sisu sĂ€ilitamise parameetrina lisada vĂ”tmesĂ”na SĂ€ilita.

Parameetrid:

VarName: Mis tahes muutuja vÔi massiivi nimi.

Algus, lÔpp: ArvvÀÀrtused vÔi konstandid, mis mÀÀratlevad elementide arvu (NumberElements=((end-start)+1) ja indeksivahemiku.

Algus ja lÔpp vÔivad olla arvavaldised, kui lauset ReDim kasutatakse protseduuri tasemel.

VarType: muutuja andmetĂŒĂŒpi kirjeldav vĂ”tmesĂ”na.

VĂ”tmesĂ”na: muutuja tĂŒĂŒp

Bool: tÔevÀÀrtus-muutuja (TÔene, VÀÀr)

Date: kuupÀevamuutuja

Double: topelt ujukomamuutuja (1.79769313486232x10E308 - 4.94065645841247x10E-324)

Integer: tÀisarvmuutuja (-32768 - 32767)

Long: pikk tÀisarvmuutuja (-2 147 483 648 - 2 147 483 647)

Object: objektimuutuja (saab mÀÀratleda ainult lause Set abil)

[Single]: ĂŒksik ujukomamuutuja (3,402823x10E38 - 1,401298x10E-45). Kui vĂ”tmesĂ”na pole mÀÀratud, mÀÀratletakse muutuja kui Üksik, v. a juhul, kui kasutatakse lauset DefBool vĂ”i Defvar.

String: maksimaalselt 64 000 ASCII-mÀrgist koosnev stringmuutuja

Variant: variandimuutuja tĂŒĂŒp (vĂ”ib sisaldada kĂ”iki tĂŒĂŒpe ja mÀÀratakse mĂ”iste abil).

Rakenduses LibreOffice Basic pole muutujaid vaja selgesĂ”naliselt deklareerida. Siiski peate enne kasutamist deklareerima massiivi. Muutuja deklareerimiseks saad kasutada lauset Dim. Deklaratsioonide eraldamiseks kasuta komasid. MuutujatĂŒĂŒbi deklareerimiseks sisesta nime jĂ€rele tĂŒĂŒbideklaratsiooni mĂ€rk vĂ”i kasuta vastavat vĂ”tmesĂ”na.

LibreOffice Basic toetab ĂŒhe- ja mitmemÔÔtmelisi massiive, mis on mÀÀratletud mÀÀratud muutujatĂŒĂŒbiga. Massiivid on sobivad siis, kui programm sisaldab loendeid vĂ”i tabeleid, mida soovid redigeerida. Massiivide eelis on see, et nende abil saab indeksite abil pöörduda ĂŒksikute elementide poole. Indeksid saab formuleerida arvavaldiste vĂ”i muutujatena.

Lause Dim abil kirjeldatud massiivide eksemplaride mÀÀramiseks on kaks vÔimalust:

DIM text(20) As String REM 21 elementi nummerdatud 0 kuni 20

DIM text(5 to 25) As String REM 21 elementi nummerdatud 5 kuni 25

DIM text$(-15 to 5) As String REM 21 elementi (0 kaasa arvatud),

rem nummerdatud -15 kuni 5

Kui muutujate tĂŒĂŒbid on mÔÔtmestatud alamprotseduuride vĂ”i funktsioonide protseduuritasemel, saab need vĂ€ljad sĂ”ltumata tĂŒĂŒbist muuta dĂŒnaamiliseks. Tavaliselt saab massiivi vahemiku mÀÀrata ainult ĂŒks kord ja hiljem ei saa seda enam muuta. Protseduuris aga saab massiivi kirjeldamiseks kasutada lauset ReDim ja mÀÀrata vĂ€ljade suurused arvavaldiste abil.

NĂ€ide:


Sub ExampleRedim
Dim iVar() As Integer, iCount As Integer
ReDim iVar(5) As Integer
For iCount = 1 To 5
    iVar(iCount) = iCount
Next iCount
ReDim iVar(10) As Integer
For iCount = 1 To 10
    iVar(iCount) = iCount
Next iCount
End Sub