Excel VBA Dizileri: Türleri ve Kullanım Örnekleri
⚡ Akıllı Özet
Excel VBA dizileri, aynı veri türündeki ilişkili değer gruplarını tek bir ad altında depolar ve bu değerlere bir indeks aracılığıyla erişilir. Bu sayfada statik ve dinamik diziler, tek, iki ve çok boyutlu diziler, bildirim sözdizimi ve örnek bir içecek yükleme işlemi açıklanmaktadır.
VBA Dizisi nedir?
Dizi, birden fazla değeri saklayabilen bir bellek konumu olarak tanımlanır. Değerlerin tümü aynı veri türünde olmalıdır. Diyelim ki favori içeceklerinizin listesini tek bir değişkende saklamak istiyorsunuz, bunu yapmak için VBA dizisini kullanabilirsiniz.
Bir dizi kullanarak ilgili değerlere aynı adla başvurabilirsiniz. Bunları birbirinden ayırmak için bir indeks veya alt simge kullanabilirsiniz. Bireysel değerlere Excel VBA dizisinin öğeleri denir. Bunlar indeks 0'dan en yüksek indeks değerine kadar bitişiktir.
Bu eğitimde kullandığınız varsayılmaktadır. Microsoft Excel sürüm 2013. Bilgiler hala diğer sürümler için geçerlidir. Microsoft Excel'in de.
Dizilerin Avantajları Nelerdir?
Dizi kodu yazmadan önce, dizilerin neden kullanılmaya değer olduğunu anlamak faydalı olacaktır. Aşağıda VBA dizi fonksiyonlarının sunduğu bazı avantajlar yer almaktadır.
- Mantıksal olarak ilişkili verileri bir arada gruplayın; diyelim ki öğrencilerin bir listesini depolamak istiyorsunuz. Anaokulu, ilkokul, ortaokul, lise vb. öğrenci kategorileri için ayrı konumlara sahip tek bir dizi değişkeni kullanabilirsiniz.
- Diziler bakımı yapılabilir kod yazmayı kolaylaştırır. Aynı mantıksal olarak ilişkili veriler için birden fazla değişken tanımlamak yerine tek bir değişken tanımlamanıza olanak tanır.
- Daha iyi performans: Bir dizi tanımlandıktan sonra verileri almak, sıralamak ve değiştirmek daha hızlı olur.
VBA'daki Dizi Türleri
VBA iki tür diziyi destekler;
- Statik – Bu tür diziler, depolanabilecek önceden belirlenmiş sabit sayıda öğeye sahiptir. Statik Dizinin veri türünün boyutu değiştirilemez. Bunlar, haftadaki gün sayısı, cinsiyet vb. gibi bilinen varlıklarla çalışmak istediğinizde kullanışlıdır.Örnek: Dim ArrayMonth(12) As String
- Hareketlilik – Bu tür dizilerin depolanabilecek önceden belirlenmiş sabit sayıda öğesi yoktur. Bunlar, sayısını önceden belirleyemediğiniz varlıklarla çalışırken kullanışlıdır.Örnek: Dim ArrayMonth() Değişken Olarak
Verilerinize hangi türün uygun olduğunu belirledikten sonraki adım, her birinin bildirim sözdizimini belirlemektir.
Dizileri bildirme sözdizimi
Statik diziler
Bildirmek için sözdizimi STATİK diziler aşağıdaki gibidir:
Dim arrayName (n) as datatype
İŞTE,
| Code | Action |
|---|---|
| Dim diziAdı (n) veri türü |
|
Dinamik diziler
Bildirmek için sözdizimi DİNAMİK diziler aşağıdaki gibidir:
Dim arrayName() as datatype ReDim arrayName(4)
İŞTE,
| Code | Action |
|---|---|
| Dim diziAdı () veri türü |
|
| ReDim diziAdı(4) |
|
Dizi Boyutları
Bir dizi tek boyutlu, iki boyutlu veya çok boyutlu olabilir.
- Tek boyut: Bu boyutta dizi yalnızca bir dizin kullanır. Örneğin her yaştan birkaç kişi.
- İkili boyutlar: Bu boyutta dizi iki indeks kullanır. Örneğin her sınıfta belirli sayıda öğrenci var. Her sınıftaki sınıf sayısını ve öğrenci sayısını gerektirir.
- Çok boyutlu: Bu boyutta dizi ikiden fazla indeks kullanır. Örneğin gündüz sıcaklıkları. (30, 40, 20).
Excel VBA'da Dizi nasıl kullanılır
Teoriyi ele aldığımıza göre, diziyi gerçek bir çalışma kitabında uygulamaya koyabiliriz. Basit bir uygulama oluşturacağız. Bu uygulama, bir dizi değişkeninden gelen verilerle bir Excel sayfasını dolduracaktır. Bu VBA Dizi örneğinde, aşağıdaki işlemleri yapacağız.
- Yeni bir tane oluştur Microsoft Excel çalışma kitabını açın ve Excel Makro Etkin Çalışma Kitabı (*.xlsm) olarak kaydedin
- Çalışma kitabına komut düğmesi ekleme
- Komut düğmesinin adını ve resim yazısı özelliklerini ayarlama
- Excel sayfasını dolduran VBA'yı programlamak
Bu egzersizi adım adım yapalım.
Adım 1 – Yeni bir çalışma kitabı oluşturun
- Açılış Microsoft Excel
- Yeni çalışma kitabını VBA Arrays.xlsm olarak kaydedin
Adım 2 – Bir komut düğmesi ekleyin
Not: Bu bölümde excel'de arayüz oluşturma sürecine aşina olduğunuz varsayılmaktadır. Eğer aşina değilseniz, öğreticiyi okuyun VBA Excel Form Kontrolü ve ActiveX Kontrolü. Arayüzün nasıl oluşturulacağını size gösterecek
- Sayfaya bir komut düğmesi ekleme
- Name özelliğini cmdLoadBeverages olarak ayarlayın
- Altyazı özelliğini İçecek Yükle olarak ayarlayın
GUI'niz şimdi aşağıdaki gibi olmalı
Adım 3 – Dosyayı kaydedin
- Farklı kaydet butonuna tıklayın
- Aşağıdaki resimde gösterildiği gibi Excel Makro Etkin Çalışma Kitabı'nı (*.xlsm) seçin
Adım 4 – Kodu yazın
Şimdi uygulamamızın kodunu yazacağız.
- İçecekleri Yükle düğmesine sağ tıklayın ve kodu görüntüle'yi seçin
- cmdLoadBeverages'ın tıklama olayına aşağıdaki kodu ekleyin
Private Sub cmdLoadBeverages_Click() Dim Drinks(1 To 4) As String Drinks(1) = "Pepsi" Drinks(2) = "Coke" Drinks(3) = "Fanta" Drinks(4) = "Juice" Sheet1.Cells(1, 1).Value = "My Favorite Beverages" Sheet1.Cells(2, 1).Value = Drinks(1) Sheet1.Cells(3, 1).Value = Drinks(2) Sheet1.Cells(4, 1).Value = Drinks(3) Sheet1.Cells(5, 1).Value = Drinks(4) End Sub
İŞTE,
| Code | Action |
|---|---|
| Dim İçecekler(1'den 4'e) As String |
|
| İçecekler(1) = “Pepsi” |
|
| Sheet1.Cells(1, 1).Value = “En Sevdiğim İçecekler” |
|
| Sayfa1.Hücreler(2, 1).Değer = İçecekler(1) |
|
Uygulamamızı test etme
Kod yerleştirildikten sonra, son adım düğmeyi çalıştırmak ve dizinin sayfayı doldurduğunu doğrulamaktır. Geliştirici sekmesini seçin ve Tasarım modu düğmesinin "kapalı" olduğundan emin olun. Gösterge, renkli (yeşilimsi) bir arka plan yerine beyaz bir arka plana sahip olmasıdır. (Aşağıdaki resme bakın)
İçecek Yükle butonuna tıklayın
Aşağıdaki sonuçları elde edeceksiniz
Yukarıdaki kodu içeren Excel'i indirin
Yukarıdaki Excel dosyasını indirin. Code






