ReDim Statement
Declara una variable o una matriu.
Sintaxi:
[ReDim]Dim VarName [(start To end)] [As VarType][, VarName2 [(start To end)] [As VarType][,...]]
Opcionalment, podeu afegir la paraula clau Preserve com a parà metre per conservar el contingut de la matriu que es redimensiona.
Parà metres:
VarName: Qualsevol nom de variable o de matriu.
Start, End: Valors numèrics o constants que defineixen el nombre d'elements (NombreElements=(fi-inici)+1) i l'interval d'Ãndex.
Start i End poden ser expressions numèriques si ReDim s'utilitza al nivell de procediment.
VarType: Paraula clau que declara el tipus de dades d'una variable.
Paraula clau: Tipus de variable
Bool: Variable booleana (Cert, Fals)
Data: Variable de data
Double: Variable de coma flotant doble (1.79769313486232x10E308 - 4.94065645841247x10E-324)
Integer: Variable d'enter (-32768 - 32767)
Llarg: Variable d'enter llarga (-2,147,483,648 - 2,147,483,647)
Object: Variable Object (només es pot definir posteriorment amb Set!)
[Single]: Variable de coma flotant senzilla (3,402823x10E38 - 1,401298x10E-45). Si no s'especifica cap paraula clau, una variable es defineix com a senzilla, a menys que s'utilitze una expressió de DefBool a DefVar.
Cadena: Variable de cadena que consta d'un mà xim de 64.000 carà cters ASCII.
Variant: Tipus de variable de variant (pot contindre tots els tipus i s'estableix per definició).
Al LibreOffice Basic no cal que declareu les variables explÃcitament. No obstant això, cal que declareu una matriu abans de poder utilitzar-les. Podeu declarar una variable amb l'expressió Dim, fent servir comes per separar múltiples declaracions. Per declarar un tipus de variable, introduïu un carà cter de declaració de tipus després del nom, o utilitzeu la paraula clau corresponent.
El LibreOffice Basic admet matrius de dimensió senzilla o múltiple que es defineixen amb un tipus de variable especificat. Les matrius són adequades si el programa conté llistes o taules que voleu editar. L'avantatge de les matrius és que és possible adreçar elements individuals segons els Ãndexs, que es poden formular com a expressions numèriques o variables.
Existeixen dues maneres de definir l'interval d'Ãndexs per a matrius declarades amb l'expressió Dim:
DIM text(20) As String REM 21 elements numerats de 0 a 20
DIM text(5 to 25) As String REM 21 elements numerats del 5 al 25
DIM text$(-15 to 5) As String REM 21 elements (0 inclòs),
rem numbered from -15 to 5
Els camps de variable, independentment del tipus, poden convertir-se en dinà mics si es dimensionen amb ReDim al nivell de procediment en subrutines o funcions. Normalment, només podeu establir l'interval d'una matriu un cop i no podeu modificar-lo. Dins d'un procediment, podeu declarar una matriu amb l'expressió ReDim amb expressions numèriques per definir l'interval de les mides del camp.
Exemple:
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