TOP

VBA-Ders 6.1. Veri türleri (Variables)

Değişkenlerin yardımıyla sayılar, metin, tarih vb. gibi her türlü bilgiyi kaydedebiliriz.

Değişken (Variable), tek bir değeri depolamak için kullanılan adlandırılmış bir bellek alanıdır. Bir değişkenin değeri kod yürütme sırasında değiştirilebilir.

Bir değişken bildirdiğimizde (Dim talimatını kullanarak), hafızada belirli bir alan ayırır ve kolay referans olması için ona bir ad veririz.

Değişken adlandırma için temel kurallar aşağıda verilmiştir:

  • İlk karakter olarak bir harf kullanmalısınız;
  • İsim içerisinde boşluk, nokta (.), ünlem işareti (!) veya @, &, $, # sembollerini kullanamazsınız;
  • Ad 255 karakteri aşamaz;
  • Visual Basic ayrılmış anahtar sözcüklerini değişken adı olarak kullanamazsınız.

  • İlk örneği düşünün:

    1. Sub variables()  
    2.    'Değişkeni bir tamsayı olarak bildirin  
    3.    Dim my_variable As Integer  
    4.    'Değişkene belirli bir değer atadık  
    5.    my_variable = 12  
    6.    'Değişkenin değerini mesaj penceresinde görüntülüyoruz  
    7.    MsgBox my_variable  
    8. End Sub  

    Kodun ilk satırı bir değişken bildirir:

    1. Dim my_variable As Integer  
  • Dim: değişken tanımı
  • my_variable: değişken adı
  • As: değişken türü tanımı
  • Integer: değişken türü
  • Genel olarak değişkenlerin bildirilmesi gerekli değildir ve kod çalışacaktır ancak şiddetle tavsiye edilir. Bu onlarla çalışmayı, onları bulmayı ve çeşitli sorunları çözmeyi kolaylaştırır. Prensip olarak değişkenleri bildirmek iyi bir programlama alışkanlığıdır.

    Bir değişkenin türü, içeriğinin doğasını (metin, sayı, tarih vb.) gösterir.

    İkinci şerit bir değişkene bir değer atar:

    1. my_variable = 12  

    Ve son olarak üçüncü şerit, mesaj penceresinde değişkenin değerini görüntüler:

    1. MsgBox my_variable  

    Kodu çalıştırmanın sonucu aşağıdaki gibi olacaktır:

    Değişken türleri

    İsim Tip Tanım Sembol
    Byte Sayısal 0 ile 255 arasında bir tam sayı
    Integer Sayısal -32'768 ile 32'767 arasında bir tam sayı %
    Long Sayısal - 2'147'483'648 ile 2'147'483'647 arasında bir tam sayı &
    Currency Sayısal -922'337'203'685'477.5808 ile 922'337'203'685'477.5807 arasında sabit ondalık sayı @
    Single Sayısal -3,402823E38 ile 3,402823E38 arasında kayan noktalı ondalık sayı !
    Double Sayısal -1,79769313486232D308 ile 1,79769313486232D308 arasında kayan noktalı ondalık sayı #
    String Metin Metin $
    Date Tarih Tarih ve saat
    Boolean Boolean Doğru (Evet) veya Yanlış (Hayır)
    Object Nesne Microsoft Object
    Variant Bir diğer Herhangi bir veri türü (değişken tanımlanmamışsa varsayılan tür)

    Farklı değişken türlerine sahip birkaç örneği ele alalım:

    1. 'Tamsayı  
    2. Dim nbInteger As Integer  
    3. nbInteger = 12345  
    4.     
    5. 'Ondalık sayı  
    6. Dim nbComma As Single  
    7. nbComma = 123.45  
    8.   
    9. 'Metin  
    10. Dim varText As String  
    11. varText = "moonexcel.com.ua"  
    12.   
    13. 'Tarih  
    14. Dim varDate As Date  
    15. varDate = "24.08.2012"  
    16.   
    17. 'Boolean Doğru/Yanlış  
    18. Dim varBoolean As Boolean  
    19. varBoolean = True  
    20.     
    21. 'Nesne (Değişken Türü Olarak Çalışma Sayfası)  
    22. Dim varSheet As Worksheet  
    23. Set varSheet = Sheets("Sheet2"'Set => "object" türündeki bir değişkene değer atamak  
    24.     
    25. '"Nesne" türünde bir değişken kullanma örneği: bir sayfayı etkinleştirme  
    26. varSheet.Activate  

    Tabloda listelenen semboller daha kısa değişken bildirimleri için kullanılabilir:

    1. Dim example As Integer  
    2. Dim example%  

    Bu iki giriş aynıdır.

    Ayrıca modülün başına Option Explicit komutunu yazarak kullanıcıyı değişkenleri bildirmeye zorlayabilirsiniz. Bu durumda bildirilmemiş bir değişken girilmişse bir hata mesajı görünecektir.