Abonelik Kapsam Dışı - Kolay Excel VBA

İçindekiler

çalışma kitapları | Çalışma Sayfaları | Dizi

NS 'alt simge aralık dışında' hatası Excel VBA'sı var olmayan bir koleksiyon üyesine veya var olmayan bir dizi öğesine başvurduğunuzda oluşur.

Çalışma sayfanıza bir komut düğmesi yerleştirin ve aşağıdaki kod satırlarını ekleyin. Kod satırlarını yürütmek için sayfadaki komut düğmesine tıklayın.

çalışma kitapları

Excel VBA'daki Çalışma Kitapları koleksiyonu, şu anda açık olan tüm Çalışma Kitabı nesnelerini içerir.

1. Aşağıdaki kod satırı sales.xlsm'yi kapatır.

Workbooks("sales.xlsm").Kapat

Bu ada sahip açık bir çalışma kitabı olmadığında sonuç:

Not: Bu 'abonelik aralık dışı' hatasını düzeltmek için (çalışma zamanı hatası 9), komut düğmesine tıklamadan önce sales.xlsm dosyasını açın.

çalışma sayfaları

Excel VBA'daki Çalışma Sayfaları koleksiyonu, bir çalışma kitabındaki tüm Çalışma Sayfası nesnelerini içerir. Çalışma kitabımızda 3 adet çalışma sayfası bulunmaktadır.

1. Aşağıdaki kod satırı, 4. çalışma sayfasındaki A1 hücresine Merhaba kelimesini yerleştirmeye çalışır.

Worksheets(4).Range("A1").Value = "Merhaba"

Sayfadaki komut düğmesine tıkladığınızda sonuç:

Açıklama: 4. çalışma sayfası olmadığı için 'abonelik aralık dışı' hatası çıkıyor. Bu hatayı düzeltmek için 4'ü 1, 2 veya 3 olarak değiştirin (veya artı işaretine tıklayarak yeni bir çalışma sayfası ekleyin).

Dizi

Bir dizi, bir değişkenler grubudur. Excel VBA'da, dizi adını ve dizin numarasını kullanarak bir dizinin belirli bir değişkenine (öğesine) başvurabilirsiniz.

1. Aşağıdaki ilk kod satırı, Films adında bir String dizisi bildirir. Dizi beş öğeden oluşur.

2. Ardından, dizinin her bir öğesini başlatırız.

3. Son kod satırı, bir MsgBox kullanarak 6. öğeyi görüntülemeye çalışır.

Dim Filmler (1'den 5)'e Kadar Dize
Filmler(1) = "Yüzüklerin Efendisi"
Filmler(2) = "Hız"
Filmler(3) = "Yıldız Savaşları"
Filmler(4) = "Baba"
Filmler(5) = "Ucuz Roman"
MsgBox Filmleri(6)

Sayfadaki komut düğmesine tıkladığınızda sonuç:

Açıklama: 6. öğe olmadığı için 'abonelik aralık dışı' hatası çıkıyor. Bu hatayı düzeltmek için 6'yı 1, 2, 3, 4 veya 5 olarak değiştirin (veya 6 elemanlı bir String dizisi bildirin).

Arkadaşlarınızla sayfasını paylaşan sitenin gelişimine yardımcı olacak

wave wave wave wave wave