Collabora Office 24.04 Súgó
Az alábbi rész a változók alapvető használati módját írja le a Collabora Office Basicben.
Egy változónév maximum 255 karakterből állhat. A változó első karakternének A-Z vagy a-z betűnek kell lennie. A változónevekben számok is használhatók, de az írásjelek és speciális karakterek nem engedélyezettek az aláhúzásjel („_”) kivételével. A Collabora Office Basic változóazonosítók nem különböztetik meg a kis- és nagybetűket. A változónevek tartalmazhatnak szóközöket, de ilyenkor a nevet szögletes zárójelek közé kell tenni.
Példák a változóazonosítókra:
MyNumber=5 'Correct'
MyNumber5=15 'Correct'
MyNumber_5=20 'Correct'
My Number=20 'Not valid, variable with space must be enclosed in square brackets'
[My Number]=12 'Correct'
DéjàVu=25 'Not valid, special characters are not allowed'
5MyNumber=12 'Not valid, variable may not begin with a number'
Number,Mine=12 'Not valid, punctuation marks are not allowed'
A Collabora Office Basicben nem kell explicit módon deklarálni a változókat. Egy változódeklaráció megadható a Dim utasítással. Egyszerre több változót is deklarálhat a neveket vesszővel elválasztva. A változótípus definiálásához használhatja a név után a típusdeklarációs jelet vagy a megfelelő kulcsszót.
Példák a változók deklarálására (meghatározására):
Dim a$ 'Declares the variable "a" as a String'
Dim a As String 'Declares the variable "a" as a String'
Dim a$, b As Integer 'Declares one variable as a String and one as an Integer'
Dim c As Boolean 'Declares c as a Boolean variable that can be TRUE or FALSE'
Miután egy változót egy bizonyos típusnak deklarált, ugyanilyen név alatt nem adhat meg újra egy másik változót más típussal!
When you declare multiple variables in a single line of code you need to specify the type of each variable. If the type of a variable is not explicitly specified, then Basic will assume that the variable is of the Variant type.
' Both variables "a" and "b" are of the Integer type
Dim a As Integer, b As Integer
' Variable "c" is a Variant and "d" is an Integer
Dim c, d As Integer
' A variable can also be explicitly declared as a Variant
Dim e As Variant, f As Double
The Variant type is a special data type that can store any kind of value. To learn more, refer to the section The Variant type below.
A változódeklaráció erőltetésére használja az alábbi parancsot:
Option Explicit
Az Option Explicit utasításnak a modul első sorában kell állni, az első SUB utasítás előtt. Általában csak a tömböket kell explicit módon deklarálni. Az összes többi változó a típusdeklarációs karakternek megfelelően lesz deklarálva, vagy - ha az nincs megadva - az alapértelmezett Single (egyszeres pontosságú) típusként.
A Collabora Office Basic négy változóosztályt támogat:
A Numerikus változók számértékeket tartalmazhatnak. Néhány változó nagy vagy kis számokat tartalmaz, mások pedig lebegőpontos vagy törtszámokhoz használhatók.
A String (karakterlánc) változók karakterláncokat tartalmaznak.
A Boolean (logikai) változók TRUE (igaz) vagy FALSE (hamis) értéket tartalmaznak.
Az Object (objektum) változók különböző típusú objektumokat tárolhatnak, mint például a dokumentumokon belüli táblázatok vagy dokumentumok.
Az integer (egész szám) változók értéke -32768-tól 32767-ig terjedhet. Ha egy lebegőpontos értéket rendel egy integer (egész szám) változóhoz, akkor a tizedesjegyek kerekítve lesznek a következő egész számra. Az integer (egész szám) változókat a program gyorsan ki tudja számítani az eljárásokban és megfelelnek a ciklusokban lévő számlálóváltozókhoz. Egy integer (egész szám) változó csak két bájt memóriát foglal el. A „%” a típusdeklarációs karakter.
Dim Variable%
Dim Variable As Integer
A long integer (hosszú egész szám) változók értéke -2147483648-tól 2147483647-ig terjedhet. Ha egy lebegőpontos értéket rendel egy long integer (hosszú egész szám) változóhoz, akkor a tizedesjegyek kerekítve lesznek a következő egész számra. A long integer (hosszú egész szám) változók gyorsan számolhatók az eljárásokban, és megfelelnek a ciklusokban lévő nagy számlálóváltozókhoz. A hosszú egész szám változó négy bájt memóriát foglal el. Az „&” a típusdeklarációs karakter.
Dim Variable&
Dim Variable As Long
A decimális változók pozitív, negatív vagy zérus értéket vehetnek fel. A pontosság legfeljebb 29 számjegy.
A decimális számok elé írhat plusz (+) vagy mínusz (-) jeleket (szóközzel vagy anélkül).
Ha egy decimális szám egy egész változóhoz van hozzárendelve, a Collabora Office Basic fel- vagy lekerekíti a számot.
A single (egyszeres pontosságú) változók pozitív és negatív értékeket vehetnek fel 3.402823 x 10E38 és 1.401298 x 10E-45 között. A single (egyszeres pontosságú) változók lebegőpontos változók, ahol a törtrész pontossága csökken az egészrész pontosságának növekedésével. A single (egyszeres pontosságú) változók az átlagos pontosságú matematikai számításokhoz megfelelőek. A számítás több időt igényel, mint integer (egész szám) változókkal, de gyorsabb, mint double (dupla pontosságú) változókkal. A single (egyszeres pontosságú) változó 4 bájt memóriát foglal el. A típusdeklarációs karakter a „!”.
Dim Variable!
Dim Variable As Single
A double (dupla pontosságú) változók pozitív és negatív értékeket vehetnek fel 1.79769313486232 x 10E308 és 4.94065645841247 x 10E-324 között. A double (dupla pontosságú) változók lebegőpontos változók, ahol a törtrész pontossága csökken az egészrész pontosságának növekedésével. A double (dupla pontosságú) változók pontos számításokhoz megfelelőek. Ezek a számítások több időt igényelnek, mint a single (egyszeres pontosságú) változókkal végzett számítások. A double (dupla pontosságú) változók 8 bájt memóriát foglalnak el. A típusdeklarációs karakter „#”.
Dim Variable#
Dim Variable As Double
A currency (pénznem) változók belsőleg 64 bites számokként (8 bájt) tárolódnak, és rögzített decimális számként jelennek meg 15 egész és 4 tizedes értékkel. Az értékek a -922337203685477.5808 - +922337203685477.5807 tartományba esnek. A currency (pénznem) változók a pénznemértékek nagy pontosságú kiszámításához használhatók. A típusdeklarációs karakter a „@”.
Dim Variable@
Dim Variable As Currency
Numbers can be encoded using octal and hexadecimal forms.
xi = &o13 ' 8 + 3
ci = &h65 ' 6*16 + 5
MAX_Integer = &o77777 ' 32767 = &h7FFF
MIN_Integer = &o100000 ' -32768 = &h8000
MAX_Long = &h7fffffff ' 2147483647 = &o17777777777
MIN_Long = &h80000000 ' -2147483648 = &o20000000000
A string (karakterlánc) változók maximum 65535 karakteres karakterláncokat tárolhatnak. Minden karakter a megfelelő Unicode-érték szerint kerül tárolásra. A string (karakterlánc) változók a programokon belüli szövegszerkesztésre és a nem nyomtatható karakterek ideiglenes tárolására alkalmasak maximum 64 kilobájt méretig. A string (karakterlánc) változók tárolásához szükséges memória a változó karaktereinek számától függ. A típusdeklarációs karakter a „$”.
In BASIC String functions, the first character of the string has index 1.
Dim Variable$
Dim Variable As String
A Boolean (logikai) változók csak a két érték egyikét tartalmazzák: TRUE (igaz) vagy FALSE (hamis). A 0-s szám a FALSE (hamis) értéknek, minden más szám a TRUE (igaz) értéknek felel meg.
Dim Variable As Boolean
A date (dátum) változók csak belső formátumban tárolt dátum- és időértékeket tartalmazhatnak. A date (dátum) változóhoz Dateserial, Datevalue, Timeserial vagy Timevalue függvény segítségével rendelt értékeket a rendszer automatikusan konvertálja belső formátumra. A date (dátum) változókat a Day, Month, Year vagy az Hour, Minute, Second függvénnyel lehet konvertálni normál számmá. A belső formátum lehetővé teszi dátum/idő-értékek összehasonlítását a két szám közötti különbség kiszámításával. Ezek a változók csak a Date kulcsszóval deklarálhatók.
Dim Variable As Date
Date literals allow to specify unambiguous date variables that are independent from the current language. Literals are enclosed between hash signs #. Possible formats are:
#yyyy-mm-dd#
#mm/dd/yyyy#
start_date = #12/30/1899# ' = 1
dob = #2010-09-28#
Variables declared as Variant can handle any data type. This means that the actual data type is defined during runtime as a value is assigned to the variable.
There are three main ways to create a Variant variable, as shown below:
Dim varA ' The type is not specified, hence the variable is a Variant
Dim varB as Variant ' The variable is explicitly declared as a Variant
varC = "abc" ' Previously undeclared variables are treated as Variants
The example below uses the TypeName function to show how the type of a Variant variable changes upon assignment.
Dim myVar As Variant
MsgBox TypeName(myVar) ' Empty
myVar = "Hello!"
MsgBox TypeName(myVar) ' String
myVar = 10
MsgBox TypeName(myVar) ' Integer
A Variant variable is initialized with the Empty special data type. You can use the IsEmpty function to test if a variable is an Empty Variant.
You can also use the keyword Any to declare a variable as a Variant. However, Any is deprecated and is available for backward compatibility.
Arguments with type Variant or Any passed in function calls are not checked for their types.
Dim myVar As Any ' Variable "myVar" is a Variant
Ha a változó deklarálásra került, akkor a rendszer automatikusan „Null” értékre állítja. Vegye figyelembe az alábbi jelölési szokásokat:
A numerikus változókhoz a rendszer automatikusan hozzárendeli a „0” értéket, deklarálásuk után.
A date (dátum) változókhoz belsőleg hozzá van rendelve a 0 érték, ami ugyanaz, mintha konvertálná a „0” értéket a Day, Month, Year vagy az Hour, Minute, Second függvénnyel.
String (karakterlánc) változókhoz a rendszer deklaráláskor üres karakterláncot rendel ("").
A Collabora Office Basic egy vagy többdimenziós tömböket ismer, amelyet a megadott változótípus definiál. A tömbök listák és táblázatok szerkesztésére alkalmasak a programokban. A tömb egyedi elemei numerikus indexen keresztül címezhetők.
A tömböket a Dim utasítással kell deklarálni. A tömb indextartománya többféleképp megadható:
Dim Text$(20) '21 elements numbered from 0 to 20'
Dim Text$(5,4) '30 elements (a matrix of 6 x 5 elements)'
Dim Text$(5 To 25) '21 elements numbered from 5 to 25'
Dim Text$(-15 To 5) '21 elements (including 0), numbered from -15 to 5'
Az indextartomány pozitív és negatív számokat is tartalmazhat.
Az állandók rögzített értékkel rendelkeznek. A programban csak egyszer vannak megadva, és később nem adhatók meg újra:
Const ConstName=Expression