İçerikler
Dizin 🔎︎

# ReDim İfadesi

Bir değişken ya da dizi bildirir.

## Sözdizimi:

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

Seçimsel olarak, Preserve anahtar kelimesini yeniden boyutlandırılmış dizinin içeriğini konumak için parametre olarak kullanabilirsiniz.

## 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.

Eğer altyordam seviyesinde ReDim kullanılırsa Başla ve Son sayısal ifadelerdir.

VarType: Bir değişkenin tipini belirleyen anahtar kelime.

Keyword: Değişken türü

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

Date: Tarih değişkeni

Double: Çift kayan nokta değişkeni (1.79769313486232x10E308 - 4.94065645841247x10E-324)

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

Long: Uzun tamsayı değişkeni (-2,147,483,648 - 2,147,483,647)

Object: Nesne değişkeni (sadece sonradan Set ile tanımlanabilir!)

[Single]: Tek kayan noktalı değişken (3.402823x10E38 - 1.401298x10E-45). Eğer bir anahtar kelime belirtilmediyse, değişken Single olarak tanımlanır, DefBool'dan DefVar'a bir deyim kullanılmadıkça.

String: En fazla 64,000 ASCII karakteri içeren karakter dizisi.

Değişken: Değişken değişken türü (tüm türleri içerebilir ve tanımla ayarlanı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.

Dim deyimi ile diziler için dizin aralığını ifade etmenin iki yolu vardır.

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

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

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

-15'ten 5'e kadar numaralanan rem

Hangi türden olursa olsun alt yordamlarda veya fonksiyonlarda prosedür seviyesinde boyutlandırılmış değişken alanları dinamik hale getirilebilir. Normalde bir dizinin aralığını bir defa ayarlar ve onu düzenleyemezsiniz. Bir prosedür içinde ReDim ifadesini alan boyutlarının aralığını tanımlayan sayısal ifadelerle kullanan bir dizi tanımlayabilirsiniz.

## Örnek:

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