ReDim instrukzioa

Aldagaiak edo matrizeak deklaratzen edo berriro definitzen ditu.

Sintaxia:

ReDim Statement diagram


ReDim [Preserve] variable [(start To end)] [As type-name][, variable2 [(start To end)] [As type-name][,...]]

Optionally, add the Preserve keyword to preserve the contents of the array that is redimensioned. ReDim can only be used in subroutines.

Parametroak:

variable: Any variable or array name.

typename: Keyword that declares the data type of a variable.

primitive data types fragment

Byte: Byte variable (0-255)

Boolean: Boolean variable (True, False)

Currency: Currency variable (Currency with 4 Decimal places)

Date: data-aldagaia

Double: Double-precision floating-point variable (1,79769313486232 x 10E308 - 4,94065645841247 x 10E-324)

Integer: osoko aldagaia (-32768 - 32767)

Long: osoko aldagai luzea (-2.147.483.648 - 2.147.483.647)

Object: Object variable (Note: this variable can only subsequently be defined with Set!)

Single: doitasun bakuneko koma mugikorraren aldagaia (3,402823 x 10E38 - 1,401298 x 10E-45).

String: gehienez 64.000 ASCII karaktere dituen kate-aldagaia.

Variant: Variant variable type (contains all types, specified by definition). If a type name is not specified, variables are automatically defined as Variant Type, unless a statement from DefBool to DefVar is used.

object: Universal Network object (UNO) object or ClassModule object instance.

char: Special character that declares the data type of a variable.

Type declaration characters fragment

LibreOffice Basic lengoaian ez dira aldagaiak esplizituki deklaratu behar. Hala ere, matrizeak deklaratu behar dira haiek erabili baino lehen. Dim instrukzioa erabilita deklaratu daitezke aldagaiak, komak (,) erabilita deklarazio anitz banatzeko. Aldagai mota bat deklaratzeko, sartu mota-deklarazioko karaktere bat eta haren ondoren izen bat, edo erabili hari dagokion motaren gako-hitz baten izena.

Declaration character

Variable type name

%

Integer

&

Long

!

Single

#

Double

$

String

@

Currency


matrizea: Matrize-deklarazioa.

matrize-zatia

hasiera, amaiera: Zenbakizko balioak edo konstanteak, elementu kopurua (ElementuKopurua=(amaiera-hasiera)+1) eta indize-barrutia definitzen dituztenak.

hasiera eta amaiera zenbakizko adierazpenak izan daitezke ReDim prozedura-mailan aplikatzen bada.

LibreOffice Basic-ek array bakunak edo anizkoitzak erabiltzen ditu, eta array horiek aldagai mota jakin batek zehazten ditu. Matrizeak egokiak dira programak editatu beharreko zerrendak edo taulak baditu. Matrizeen abantaila da elementu indibidualak indizeak kontuan hartuta helbideratu daitezkeela, eta horiek zenbakizko adierazpen edo aldagai gisa zehaztu daitezke.

Matrizeak Dim instrukzioarekin deklaratzen dira. Indize-barrutia definitzeko modu anitz dago:


  Dim text(20) As String ' 21 elementu, 0 eta 20 arteko zenbakiak dituztenak
  Dim value(5 to 25) As Integer ' 21 balio, 5 eta 25 arteko zenbakiak dituztenak
  Dim amount(-15 to 5) As Currency ' 21 kantitate (0 barne), -15 eta 5 arteko zenbakiak dituztenak
  REM Bi dimentsiotako datu-eremua
  Dim table$(20,2) ' 63 items; from 0 to 20 level 1, from 0 to 20 level 2 and from 0 to 20 level 3.

You can declare an array types as dynamic if a ReDim statement defines the number of dimensions in the subroutine or the function that contains the array. Generally, you can only define an array dimension once, and you cannot modify it. Within a subroutine, you can declare an array with ReDim. You can only define dimensions with numeric expressions. This ensures that the fields are only as large as necessary.

Adibidea:


Sub ExampleRedim
    Dim iVar() As Integer, iCount As Byte
    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

Emaguzu laguntza!