VBA Seçeneği Açık | Değişken Beyanı Nasıl Zorunlu Hale Getirilir?

Excel VBA Seçeneği Açık

Değişkenlerin bildirilmesi VBA'da çok önemlidir, Option Explicit , kullanıcıyı kullanmadan önce tüm değişkenleri bildirmesini zorunlu kılar, tanımsız herhangi bir değişken kodun yürütülmesi sırasında bir hata atar, anahtar kelime seçeneğini açık olarak yazabilir veya etkinleştirebiliriz değişken bildirim gerektirmeyi etkinleştirerek seçeneklerdeki tüm kodlar.

VBA'da her şey değişkenlerle ilgilidir. Verileri saklamak için uygun veri tipine sahip değişkenlere ihtiyacımız var. Değeri doğrudan elektronik tablonun kendisine ekleyebildiğinizde neden değişkene ihtiyacınız olduğunu bana sorabilirsiniz. Bunun başlıca nedeni, çalışma kitabının birden çok kullanıcısıdır, eğer bir kişi tarafından işlenirse, o zaman değere doğrudan sayfanın kendisine başvurabilirsiniz. Değişkenleri bildirerek, verileri depolamak için esnek kod oluşturabiliriz.

VBA Seçeneği Açıkça nedir?

Umarım modülde herhangi bir makro başlatılmadan önce modülünüzün üst kısmında mavi çizgili "Option Explicit" kelimesine rastlamışsınızdır.

VBA öğrenmeye başladığımda ben de bunun ne olduğunu anlamadım ve açıkçası bunu hiç düşünmedim bile. Sadece benim için değil, aynı zamanda başlangıçta herkes için aynı. Ama şimdi bu kelimenin önemini göreceğiz.

"Option Explicit" , değişkeni tanımlamada bizim rehberimizdir. Bu kelimeyi ekleyerek değişken bildirimini zorunlu bir işlem haline getirir.

Bu VBA Seçeneği Açık Excel Şablonunu buradan indirebilirsiniz - VBA Seçeneği Açık Excel Şablonu

Anlamak için bir örnek için aşağıdaki koda bakın.

Kod:

 Alt Örnek1 () i = 25 MsgBox i End Sub 

Bu kodu çalıştırırsam, VBA'daki mesaj kutusunda bir "I" değişkeninin değerini alacağız.

Şimdi VBA kodunun en başına "Option Explicit" kelimesini ekleyeceğim.

Şimdi kodu çalıştıracağım ve ne olacağını göreceğim. Benimle pratik yapıyorsanız, kodu çalıştırmak için F5 tuşuna basın.

Derleme hatası aldık ve "Değişken tanımlanmamış" diyor . "İ" değişkenini tanımlamadık ama hemen değerini 25 olarak belirledik.

"Option Explicit" kelimesini eklediğimiz için bizi değişkeni zorunlu olarak beyan etmeye zorlar.

Yukarıdaki kodda "i" alfabesi belirtilmemiştir , bu nedenle "Seçenek Açık" değişken denetleyici kelimesini ekledik, bu bizim bildirilmemiş değişkenleri kullanmamızı engeller.

Modülün tepesine "Option Explicit" kelimesini eklediğiniz anda, değişkenleri zorunlu olarak bildirmek o modüldeki tüm makrolar için geçerlidir.

Değişken Beyanı Nasıl Zorunlu Hale Getirilir?

Yeni modülü eklediğinizde modülünüze "Option Explicit" değişken mentorunu manuel olarak eklediyseniz, bu değişken danışmanı varsayılan olarak alamazsınız.

Her seferinde tüm yeni modüller için "Option Explicit" kelimesini manuel olarak eklemeniz gerektiğini düşünüyorsanız yanılıyorsunuz.

Çünkü basit bir ayar yaparak bu kelimeyi tüm modüllerde zorunlu hale getirebiliriz. Ayarları yapmak için aşağıdaki adımları izleyin.

Adım 1: Görsel temel düzenleyiciye gidin.

Adım 2: ARAÇLAR'a gidin ve Seçenekler'e tıklayın.

Adım 3: Seçenekler'e tıkladığınız anda aşağıdaki pencereyi göreceksiniz.

Adım 4: Bu pencere altında Düzenleyiciye gidin ve "Değişken Beyanı Gerektir" seçeneğini işaretleyin .

Adım 5: Pencereyi kapatmak için Tamam'a tıklayın.

Şu andan itibaren, her yeni modül eklediğinizde, varsayılan olarak otomatik olarak "Option Explicit" kelimesini ekler.

Seçenek Açık, Sizin Kurtarıcınızdır

Option Explicit bize birçok yönden yardımcı olur, değişken bildirimini zorunlu kılmaktan yürütmeye kadar bize yardımcı olacaktır. Aşağıdaki koda bakın.

Kod:

 Alt Örnek2 () Dim CurrentValue As Integer CurentValue = 500 MsgBox CurrentValue End Sub 

Yukarıdaki kodda "CurrentValue" değişkenini bir tamsayı olarak tanımladım. Bir sonraki satırda ona 500 değerini verdim. Bu kodu çalıştırırsam, bir mesaj kutusunda sonuç olarak 500 almalıyım. Ama ne olacağını görün.

"Değişken tanımlanmadı" diyor ve ikinci satırı vurguladı.

İkinci satıra yakından bakarsak ufak bir yazım hatası var. Değişken adım "CurrentValue", ancak ikinci satırda bir yazım, yani "r" eksik. "CurrentValue" yerine "CurrentValue" yazıyor. Excel VBA'ya "Option Explicit" kelimesini ekleyerek değişken bildirimini zorunlu hale getirdiğimden, yaptığım yazım hatası hatasını bana vurguladı.

Yani yazımı düzelttiğimizde ve kodu çalıştırdığımızda sonucu aşağıdaki gibi alacağız.

Yeni atanan değişken danışmanına merhaba deyin !!!