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ımlanmamış 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 bildirimi 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. Bir kişi tarafından ele alınıyorsa, o zaman değere doğrudan sayfanın kendisine başvurabilirsiniz. Değişkenleri bildirerek, verileri depolamak için esnek kod yapabiliriz.

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

Umarım modülde herhangi bir makro başlamadan ö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 bunun ne olduğunu ben de anlamadım ve açıkçası bunu hiç düşünmedim bile. Sadece sen ve 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.

Örneğin, anlamak 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.

Bir derleme hatası aldık ve "Değişken tanımlanmamış" diyor . "İ" değişkenini açıklamadık, ancak hemen değerini 25 olarak belirledik.

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

Yukarıdaki kodda, "i" alfabesi bildirilmemiştir, bu nedenle "Seçenek Açık" değişken denetleyici sözcüğünü ekledik, bildirilmemiş değişkenleri kullanmamızı engeller.

Modülün üst kısmına "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.

Basit bir ayar yaparak bu kelimeyi tüm modüllerde zorunlu hale getirebildiğimiz için ayarları yapmak için aşağıdaki adımları takip ediniz.

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.

4. Adım: Bu pencerenin altında, Düzenleyiciye gidin ve "Değişken Bildirimi 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şkenin 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, mesaj kutusu sonucunda 500 almam gerekir. 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ı kaçırdım, yani "r". "CurrentValue" yerine "CurrentValue" yazıyor. Excel VBA'da "Option Explicit" kelimesini ekleyerek değişken bildirimini zorunlu hale getirdiğimden, yaptığım yazım hatası hatasını vurguladı.

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

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

Ilginç makaleler...