İçerikler
Dizin 🔎︎

# Dim İfadesi

Bir değişken ya da dizi bildirir.

Eğer değişkenler virgül ile ayrılmışlarsa (örneğin, DIM sPar1, sPar2, sPar3 AS STRING), sadece Variant değişkenler tanımlanabilir. Her bir değişken için ayrı tanım satırı kullanın.

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

Dim altyordamlar içinde yerel değişkenleri bildirir. Genel değişkenler PUBLIC ya da PRIVATE deyimleri ile bildirilir.

## Sözdizimi:

    [ReDim]Dim VarName [(start To end)] [As VarType][, VarName2 [(start To end)] [As VarType][,...]]

## Parametreler:

VarName: Herhangi bir değişken ya da dizi adı.

Start, End: Eleman sayısını (ElemanSayısı=(end-start)+1) ve index aralığını belirleyen sayısal ya da sabit değerler.

ReDim prosedür düzeyinde uygulandığında, Start ve End sayısal ifadeler olabilir.

VarType: Bir değişkenin veri türünü bildiren anahtar sözcük.

Keyword: Değişken türü

Bool: Boolean değişken(True, False)

Para Birimi: Para Birimi Değişkeni (4 Ondalıklı Para Birimi)

Date: Tarih değişkeni

Double: Çift duyarlı gerçel sayı değişkeni (1,79769313486232 x 10E308 - 4,94065645841247 x 10E-324)

Integer: Tamsayı değişkeni (-32768 - 32767)

Long: Uzun tam sayı değişkeni (-2.147.483.648 - 2.147.483.647)

Object: Nesne değişkeni (Not: bu değişken sadece Set! ifadesi ile ardarda tanımlanabilir.)

Single: Tek duyarlı gerçel sayı değişkeni (3,402823 x 10E38 - 1,401298 x 10E-45).

String: En fazla 64,000 ASCII karakteri içeren karakter dizisi değişkeni.

[Variant]: Variant değişken türü (tanımı ile belirtilen tüm değişken türlerini içerir). DefBool-DefVar arası bir deyim kullanılmazsa, anahtar sözcük belirtilmemişse, değişkenler otomatik olarak Variant türü olarak tanımlanır.

LibreOffice Basic'te, değişkenleri açıkça belirtmek zorunde değilsiniz. Yine de, bir diziyi kullanmadan önce tanımlamalısınız. Bir değişkeni çoklu tanımlamaları virgülle ayıracak şekilde Dim ifadesiyle tanımlayabilirsiniz. Bir değişken tipi tanımlamak için, isimden sonra bir tip-tanımlama karakteri kullanabilir ya da karşılık gelen anahtar kelimeyi belirtebilirsiniz.

LibreOffice Basic belirli değişken türleri ile tanımlanan tek ya da çok boyutlu dizileri destekler. Diziler, programda düzenlemek istediğiniz listeler ya da tablolar bulunuyorsa elverişlidir. Dizilerin avantajı, sayısal ifadeler ya da değişkenler olarak formüle edilebilen indekslere göre birbirinden ayrı ögelerin adreslenmesinin mümkün olmasıdır.

Diziler Dim deyimi ile bildirilir. Dizin aralığını tanımlamak için iki yöntem vardır:

DIM text(20) as String REM 0'dan 20'ye kadar numaralanan 21 öge

DIM text(5 to 25) as String REM 5'ten 25'e kadar numaralanan 21 öge

DIM text(-15 to 5) as String REM 21 öge (0 dahil)

-15'ten 5'e kadar numaralanan REM

İki boyutlu veri alanı

DIM text(20,2)String REM 63 öğesi;0dan 20ye 1.seviye,0dan 20ye 2. seviye ve 0dan 20ye 3.seviye biçimlendir

Eğer bir ReDim ifadesi altyordamdaki ya da diziyi içeren işlevdeki boyut sayısını tanımlıyorsa dizi türlerini dinamik olarak bildirebilirsiniz. Genellikle bir dizinin boyutunu yalnız bir kez tanımlayabilirsiniz ve daha sonra değiştiremezsiniz. Altyordam ile ReDim komutunu kullanarak programa herhangi bir dizi bildirebilirsiniz. Boyutları yalnız sayısal ifadelerle tanımlayabilirsiniz. Bu, alanların yalnız olması gerektiği kadar geniş olmasını sağlar.

## Örnek:

    Sub ExampleDim1
    Dim sVar As String
    Dim iVar As Integer
        sVar = "Office"
    End Sub

    Sub ExampleDim2
    ' İki boyutlu veri alanı
    Dim stext(20,2) As String
    Const sDim as String = " Boyut:"
    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