Dim Statement

Объявляет переменную или массив.

Если переменные разделены запятыми (например, DIM sPar1, sPar2, sPar3 AS STRING), могут быть определены только переменные типа Variant. Для каждой переменной следует использовать отдельную строку определения.


Dim sPar1 As String
Dim sPar2 As String
Dim sPar3 As String

Dim объявляет локальные переменные в процедурах. Глобальные переменные объявляются инструкциями PUBLIC или PRIVATE.

Синтаксис


[ReDim]Dim Имя_переменной [(Начало To Конец)] [As Тип_переменной][, Имя_переменной2 [(Начало To Конец)] [As Тип_переменной][,...]]

Параметры:

Имя_переменной. Любое имя переменной или массива.

Начало, Конец. Числовые значения или константы, определяющие число элементов (Число_элементов=(Конец-Начало)+1) и диапазон индексов.

Параметры Начало и Конец могут быть числовыми выражениями, если ReDim применяется на уровне процедуры.

Тип_переменной. Ключевое слово, описывающее тип данных переменной.

Ключевое слово. Тип переменной.

Bool. Логическая переменная (True, False).

Currency. Переменная типа Currency (денежная единица с 4 десятичными разрядами)

Date. Переменная даты

Double. Переменная с плавающей запятой с двойной степенью точности (1,79769313486232 x 10E308 - 4,94065645841247 x 10E-324)

Integer. Целая переменная (-32768 - 32767)

Long. Целая переменная типа Long (-2 147 483 648 - 2 147 483 647)

Object. Переменная типа Object (Примечание. Эту переменную можно определить только позднее с помощью Set!)

Single. Переменная с плавающей точкой с обычной точностью (3,402823 x 10E38 - 1,401298 x 10E-45).

String. Строковая переменная, состоящая не более чем из 64 000 символов ASCII.

[Variant]. Переменная типа Variant (содержит все типы, указанные определением). Если ключевое слово не определено, переменным автоматически присваивается тип Variant, если не используется какая-либо из инструкций от DefBool до DefVar.

В LibreOffice Basic не требуется, чтобы объявление переменных было явным. Однако перед использованием массива его необходимо объявить. Для объявления переменных можно воспользоваться инструкцией Dim, разделяя отдельные объявления переменных запятыми. Чтобы объявить тип переменной, введите символ описания типа после имени или используйте соответствующее ключевое слово.

В LibreOffice Basic поддерживаются одно- и многомерные массивы, определяемые с помощью заданного типа переменной. Массивы применяются, если программа содержит списки или таблицы, которые нужно изменять. Преимущество массивов заключается в том, что можно рассматривать отдельные элементы в соответствии с индексами, которые могут быть сформулированы как числовые выражения или переменные.

Массивы объявляются с помощью инструкции Dim. Для определения диапазона индексов существует два метода.

DIM text(20) as String REM 21 элемент, пронумерованные от 0 до 20

DIM text(5 to 25) as String REM 21 элемент, пронумерованные от 5 до 25

DIM text(-15 to 5) as String REM 21 элемент (включая 0),

REM пронумерованные от -15 до 5

Двумерное поле данных

DIM text(20,2) as String REM 63 элемента; от 0 до 20 уровень 1, от 0 до 20 уровень 2 и от 0 до 20 уровень 3.

Типы массивов можно определить как динамические, если инструкция ReDim определяет число размерностей в процедуре или функции, содержащей массив. Как правило, размерность массива можно определить только один раз без возможности её изменения. В пределах процедуры массив может быть описан с помощью инструкции ReDim. Допускается определение размерностей только с использованием числовых выражений. Это гарантирует, что величина полей не будет больше необходимой.

Пример:


Sub ExampleDim1
Dim sVar As String
Dim iVar As Integer
    sVar = "Office"
End Sub
 
Sub ExampleDim2
Двумерное поле данных
Dim stext(20,2) As String
Const sDim as String = " Размерность:"
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

Please support us!