- Katılım
- 25 May 2018
- Mesajlar
- 1,611
- En iyi yanıt
- 14
- Puanları
- 113
- Konum
- İstanbul
- Web sitesi
- excelarsivi.com
- Ad Soyad
- Murat OSMA
- Office Vers.
- Microsoft 365 TR+EN
Değişkenler genellikle bir veriyi hafızada tutmak ve gerektiğinde bu veriyi kullanmak için vardır.
Değişkenler genelde iki sınıfa ayrılır. Global (Genel) değişkenler ve Local (Yerel) değişkenlerdir.
Global değişkenler programın bütün fonksiyonları tarafından kullanılabilirken, Local değişkenler sadece tanımlandıkları fonksiyonda kullanılır.
Bir prosedür, fonksiyon veya yürütülen bir modülün ömrü boyunca geri çağrılabilir, yeniden atanabilir veya sabitlenebilir.
Bir değişken bildirmek, kullanacağınız değişkenlerin adlarını ve değişkenin içereceği veri türünü belirtmenize olanak tanır.
Örneğin, Sonuç = 10 ise, değişken Sonuç bir Integer [SUP]Tam sayı[/SUP] olarak bildirilebilir.
Değişken isimlerini genelde kısa ve akılda kalıcı bir biçimde oluştururuz. En çok tercih edilen değişken isimleri; i, a, n, x ,y ,z, s gibi tek karakterlik isimlerdir ki, kodlarda yazımı kolay olsun. Değişken adları kodlar içerisinde kullanırken hatırlayacağınız bir ad olursa, kod yazımı esnasında hata yapma olasılığınız azalır.
Şimdi tanımlama kısmına geçebiliriz.
Değişken tanımlama ile ilgili genel yazım kalıpları bu şekildedir.
Bu genel tanımlama ile beraber aşağıda belirtilen tanımlama yöntemleri de tercih edilebilir.
En çok bilinen ve kullanılan değişken tanımlama yoludur.
Yazım kalıbını [SUP]Syntax[/SUP] yukarıda belirttik. Tekrar birkaç örnekle netleştirelim.
Diyelim ki, A sütunundaki satırlarda (hücrelerde) kullanmak üzere satır adında bir değişken tanımlaması yapacağız, satır numaraları tam sayı oldukları için Veri Türleri makalemizde belirttiğimiz tam sayı veri tiplerinden birini kullanabiliriz. Kontrol ettireceğimiz satır sayısına veya hücrede olabilecek maksimum sayıya göre değişken veri tipini kullanmak daha uygun olacaktır. Sayısal ve Tam Sayı olarak kullanabileceğimiz, temelde uygun 3 değişken veri tipimiz var, Byte, Integer ve Long. Eğer satır değişkenine atayacağımız sayısal veri 255 ve daha az ise, o zaman hafızada daha az yer kaplayan Byte değişken veri tipini kullanabiliriz. Eğer satır değişkenine atayacağımız sayısal veri -32767 ile +32768 arasında ise, o zaman da Integer değişken veri tipini kullanabiliriz. Daha büyük bir Tam Sayı olabilir ise, o zaman da Long değişken veri tipini kullanmalıyız. Eğer değişkeninin alabileceği maksimum sayıdan daha büyük bir sayı gönderilirse Overflow (Taşma) hatası alınır. Eğer Sayısal olarak belirtilen bir değişkene Metinsel bir ifade gönderilirse, o zaman da Type Mismatch (Tür Uyuşmazlığı) hatası alınız.
Birkaç Dim ile tanımlama örneği verelim;
Bu şekilde her bir değişkeni ayrı ayrı satırlarda yazabildiğimiz gibi, istersek tek bir satırda da bu şekilde yan yana yazabiliyoruz.
Sadece en başta Dim olması gerekiyor ve her bir değişken arasına virgül koyarak devam ediyoruz.
Burada şuna dikkat etmek gerekiyor. Bazı kullanıcılar şurada yanılgıya düşüp yanlış bir tanımlama yapabiliyorlar.
Yukarıda yazdığım kodu eğer bu aşağıdaki gibi yazmaya kalkarsanız, yani Dim ile başlayıp ilk değişkeni tanımladım diyerek, devam eden yandaki değişkenleri de uygun değişken veri tipleri ile tanımlamış olmazsınız.. "sutun", "metin" tanımlamalarında veri tipleri belirtilmediği için, Byte ve String değil, tanımsız veri tipi olan Variant olarak belirtilmiş olur. Dim ile tanımladığım ilk değişkende veri tipi belirttiğiniz için, devamında gelen diğer değişkenleri de tanımlamış olmuyorsunuz, her bir değişenin ayrı ayrı tipini de belirtmelisiniz.
Veri Tanımlayıcıları (Kısaltamalar) ile tanımlama hakkında bu makalede detaylı bilgi verilmiştir. İnceleyebilirsiniz.
Veri Tanımlayıcıları (Kısaltmalar)
DEF ile Tanımlama
Değişkenlerimizi belirttiğimiz gibi birkaç farklı yöntemle tanımlayıp bildirebiliyorduk, bu yöntemlerden biri de DEF ile tanımlama.
Bu tanımlama genellikle kod penceresinin en üstünde prosedürden bağımsız olarak yapılır.
Değişken olarak kullandığımız isim ve veri tipini aşağıdaki gibi kısaltarak tanımlamasını yapabiliyoruz.
Def+Tür 'den sonra gelen harf ile başlayan değişkenlerin o türde olduğunu ifade eder.
Def ile tanımlamaya Dim ile arasındaki farkı gösteren bir örnek verelim..
Öncelikle Dim ile değişkenlerimizi bu şekilde tanımlayalım.
Şimdi bu tanımlamayı bir de Def ile yapalım.
Gördüğünüz gibi sadece baş harflerini kullanarak türünü belirtip değişken tanılaması yapmış olduk.
Bu noktada değişken tanımlamaları fazla yer kaplamasın ve daha az satırda görünsün isterseniz, Aşağıda belirtildiği gibi Def satırlarını iki nokta üst üste ( : ) ile tek satırda yan yana yazabilirsiniz.
Bu arada tüm değişken isimlerini, değerlerini ve türlerini Locals Window'dan kolaylıkla takip edebilir ve değerlendirebilirsiniz.

Değişkenler genelde iki sınıfa ayrılır. Global (Genel) değişkenler ve Local (Yerel) değişkenlerdir.
Global değişkenler programın bütün fonksiyonları tarafından kullanılabilirken, Local değişkenler sadece tanımlandıkları fonksiyonda kullanılır.
Bir prosedür, fonksiyon veya yürütülen bir modülün ömrü boyunca geri çağrılabilir, yeniden atanabilir veya sabitlenebilir.
Bir değişken bildirmek, kullanacağınız değişkenlerin adlarını ve değişkenin içereceği veri türünü belirtmenize olanak tanır.
Örneğin, Sonuç = 10 ise, değişken Sonuç bir Integer [SUP]Tam sayı[/SUP] olarak bildirilebilir.
Değişken isimlerini genelde kısa ve akılda kalıcı bir biçimde oluştururuz. En çok tercih edilen değişken isimleri; i, a, n, x ,y ,z, s gibi tek karakterlik isimlerdir ki, kodlarda yazımı kolay olsun. Değişken adları kodlar içerisinde kullanırken hatırlayacağınız bir ad olursa, kod yazımı esnasında hata yapma olasılığınız azalır.
Şimdi tanımlama kısmına geçebiliriz.
Değişken tanımlama ile ilgili genel yazım kalıpları bu şekildedir.
Dim değişken_adı [(diziboyutu)] As tipi
Public değişken_adı [(diziboyutu)] As tipi
Global değişken_adı [(diziboyutu)] As tipi
Static değişken_adı [(diziboyutu)] As tipi
Bu genel tanımlama ile beraber aşağıda belirtilen tanımlama yöntemleri de tercih edilebilir.
- Dim ile tanımlama
- Veri Tanımlayıcıları (Kısaltmalar) ile tanımlama
- DEF ile tanımlama
En çok bilinen ve kullanılan değişken tanımlama yoludur.
Yazım kalıbını [SUP]Syntax[/SUP] yukarıda belirttik. Tekrar birkaç örnekle netleştirelim.
Diyelim ki, A sütunundaki satırlarda (hücrelerde) kullanmak üzere satır adında bir değişken tanımlaması yapacağız, satır numaraları tam sayı oldukları için Veri Türleri makalemizde belirttiğimiz tam sayı veri tiplerinden birini kullanabiliriz. Kontrol ettireceğimiz satır sayısına veya hücrede olabilecek maksimum sayıya göre değişken veri tipini kullanmak daha uygun olacaktır. Sayısal ve Tam Sayı olarak kullanabileceğimiz, temelde uygun 3 değişken veri tipimiz var, Byte, Integer ve Long. Eğer satır değişkenine atayacağımız sayısal veri 255 ve daha az ise, o zaman hafızada daha az yer kaplayan Byte değişken veri tipini kullanabiliriz. Eğer satır değişkenine atayacağımız sayısal veri -32767 ile +32768 arasında ise, o zaman da Integer değişken veri tipini kullanabiliriz. Daha büyük bir Tam Sayı olabilir ise, o zaman da Long değişken veri tipini kullanmalıyız. Eğer değişkeninin alabileceği maksimum sayıdan daha büyük bir sayı gönderilirse Overflow (Taşma) hatası alınır. Eğer Sayısal olarak belirtilen bir değişkene Metinsel bir ifade gönderilirse, o zaman da Type Mismatch (Tür Uyuşmazlığı) hatası alınız.
Birkaç Dim ile tanımlama örneği verelim;
PHP:
Sub Excel_Turkey()
Dim satir As Long
Dim sutun As Byte
Dim metin As String
Dim baslangic As Date
Dim para As Currency
Dim nesne As Object
satir = 15
sutun = 5
metin = "Excel Turkey Forum"
baslangic = "24.06.2018"
para = 300
Set nesne = ActiveSheet
End Sub
Sadece en başta Dim olması gerekiyor ve her bir değişken arasına virgül koyarak devam ediyoruz.
PHP:
Sub Excel_Turkey()
Dim satir As Long, sutun As Byte, metin As String
Dim baslangic As Date, para As Currency, nesne As Object
End Sub
Yukarıda yazdığım kodu eğer bu aşağıdaki gibi yazmaya kalkarsanız, yani Dim ile başlayıp ilk değişkeni tanımladım diyerek, devam eden yandaki değişkenleri de uygun değişken veri tipleri ile tanımlamış olmazsınız.. "sutun", "metin" tanımlamalarında veri tipleri belirtilmediği için, Byte ve String değil, tanımsız veri tipi olan Variant olarak belirtilmiş olur. Dim ile tanımladığım ilk değişkende veri tipi belirttiğiniz için, devamında gelen diğer değişkenleri de tanımlamış olmuyorsunuz, her bir değişenin ayrı ayrı tipini de belirtmelisiniz.
PHP:
Sub Excel_Turkey()
Dim satir As Long, sutun, metin
Dim baslangic As Date, para, nesne
End Sub
Veri Tanımlayıcıları (Kısaltamalar) ile tanımlama hakkında bu makalede detaylı bilgi verilmiştir. İnceleyebilirsiniz.
Veri Tanımlayıcıları (Kısaltmalar)
DEF ile Tanımlama
Değişkenlerimizi belirttiğimiz gibi birkaç farklı yöntemle tanımlayıp bildirebiliyorduk, bu yöntemlerden biri de DEF ile tanımlama.
Bu tanımlama genellikle kod penceresinin en üstünde prosedürden bağımsız olarak yapılır.
Değişken olarak kullandığımız isim ve veri tipini aşağıdaki gibi kısaltarak tanımlamasını yapabiliyoruz.
Def+Tür 'den sonra gelen harf ile başlayan değişkenlerin o türde olduğunu ifade eder.
İfade | Veri Tipi |
---|---|
DefBool | Boolean |
DefByte | Byte |
DefCur | Currency |
DefDate | Date |
DefDbl | Double |
DefDec | Decimal |
DefInt | Integer |
DefLng | Long |
DefObj | Object |
DefSgn | Single |
DefStr | String |
DefVar | Variant |
Öncelikle Dim ile değişkenlerimizi bu şekilde tanımlayalım.
PHP:
Sub ExcelTurkey()
Dim satir As Integer, sutun As Integer
Dim metin As String, harf As String, kelime As String
Dim tarih As Date, baslangic As Date
Dim rakam As Double, fiyat As Double
satir = 10
sütun = 5
metin = "Excel Turkey"
harf = "E"
kelime = "Kitap"
tarih = "24.06.2018"
baslangic = "14.12.1980"
rakam = 1453.48
fiyat = 5647.15
End Sub
PHP:
DefInt S
DefStr H, K, M
DefDate B, T
DefDbl F, R
Sub ExcelTurkey()
satir = 10
sütun = 5
metin = "Excel Turkey"
harf = "E"
kelime = "Kitap"
tarih = "24.06.2018"
baslangic = "14.12.1980"
rakam = 1453.48
fiyat = 5647.15
End Sub
Bu noktada değişken tanımlamaları fazla yer kaplamasın ve daha az satırda görünsün isterseniz, Aşağıda belirtildiği gibi Def satırlarını iki nokta üst üste ( : ) ile tek satırda yan yana yazabilirsiniz.
PHP:
DefInt S: DefStr H, K, M: DefDate B, T: DefDbl F, R
Sub ExcelTurkey()
satir = 10
sütun = 5
metin = "Excel Turkey"
harf = "E"
kelime = "Kitap"
tarih = "24.06.2018"
baslangic = "14.12.1980"
rakam = 1453.48
fiyat = 5647.15
End Sub
Bu arada tüm değişken isimlerini, değerlerini ve türlerini Locals Window'dan kolaylıkla takip edebilir ve değerlendirebilirsiniz.

Son düzenleme: