IBM Lotus Symphony
|
Deklarerer en variabel eller en matrise.
Hvis variablene er atskilt med komma (for eksempel DIM sPar1, sPar2, sPar3 AS STRING), kan bare Variant-variabler defineres. Bruk en egen definisjonslinje for hver variabel.
DIM sPar1 AS STRING
DIM sPar2 AS STRING
DIM sPar3 AS STRING
Dim deklarerer lokale variabler inne i subrutiner. Globale variabler deklareres med PUBLIC- eller PRIVATE-setningen.
[ReDim]Dim VarNavn [(start To slutt)] [As VarType][, VarNavn2 [(start To slutt)] [As VarType][,...]]
VarNavn: En variabel eller et matrisenavn.
Start, Slutt: Numeriske verdier eller konstanter som definerer antall elementer (AntallElementer=(slutt-start)+1) og indeksområdet.
Start og Slutt kan være numeriske uttrykk hvis ReDim brukes på prosedyrenivå.
VarType: Nøkkelord som deklarerer datatypen til en variabel.
Nøkkelord: Variabeltype
Bool: Boolsk variabel (Sann, Usann)
Currency: Valutavariabel (Valuta med 4 desimaler)
Date: Datovariabel
Double: Flytetallsvariabel med dobbel presisjon (1,79769313486232 x 10E308 - 4,94065645841247 x 10E-324)
Integer: Heltallsvariabel (-32768 - 32767)
Long: Lang heltallsvariabel (-2.147.483.648 - 2.147.483.647)
Object: Objektvariabel (Merk: Denne variabelen kan bare defineres etterfølgende med Set!)
Single: Flytetallsvariabel med enkel presisjon (3,402823 x 10E38 - 1,401298 x 10E-45).
Streng: Strengvariabel som består av maksimalt 64.000 ASCII-tegn.
[Variant]: Variantvariabeltype (inneholder alle typer, angitt med definisjon). Hvis det ikke er angitt et nøkkelord, blir variabler automatisk definert som Variant-type, med mindre et uttrykk fra DefBool til DefVar er brukt.
I Lotus Symphony Basic behøver du ikke å deklarere variabler eksplisitt. Du må imidlertid deklarere en matrise før du kan bruke dem. Du kan deklarere en variabel med Dim-setningen, med komma som skilletegn mellom flere deklarasjoner. Hvis du skal deklarere en variabeltype, angir du et typedeklarasjonstegn etter navnet eller bruker et tilsvarende nøkkelord.
Lotus Symphony Basic støtter en- eller flerdimensjonale matriser som er definert av en angitt variabeltype. Matriser egner seg hvis programmet inneholder lister eller tabeller som du vil redigere. Fordelen med matriser er at det er mulig å adressere enkeltelementer etter indekser, som kan formuleres som numeriske uttrykk eller variabler.
Matriser deklareres med Dim-setningen. Det finnes to metoder for å definere indeksområdet:
DIM text(20) as String REM 21 elementer nummerert fra 0 til 20
DIM text(5 to 25) as String REM 21 elementer nummerert fra 5 til 25
DIM text(-15 to 5) as String REM 21 elementer (inklusive 0)
REM nummerert fra -15 til 5
Todimensjonalt datafelt
DIM text(20,2) as String REM 63 elementer; fra 0 til 20 nivå 1, fra 0 til 20 nivå 2 og fra 0 til 20 nivå 3.
Du kan deklarere en matrisetype som dynamisk hvis et ReDim-uttrykk definerer antall dimensjoner i subrutinen eller funksjonen som inneholder matrisen. Vanligvis kan du bare definere en matrisedimensjon en gang, og du kan ikke endre den. Inne i en subrutine kan du deklarere en matrise med ReDim. Du kan bare definere dimensjoner med numeriske uttrykk. Det sikrer at feltene bare er så store som nødvendig.
Sub ExampleDim1
Dim sVar As String
Dim iVar As Integer
sVar = "Lotus Symphony"
End Sub
Sub ExampleDim2
REM Todimensjonalt datafelt
Dim stext(20,2) as String
Const sDim as String = " Dimensjon:"
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