VBA'da Select Case Deyimi nasıl kullanılır? (Örnekler)

Excel VBA Select Case İfadesi

Select Case , VBA'da birden çok if ifadesinin yazılmasının yerine geçer; bir kodda birçok koşulumuz olduğunda, birden çok If ifadesi kullanmak zorunda kalabiliriz ve bu, If ifadelerinin daha fazlası sağlandıkça daha karmaşık hale geldikçe yorucu olabilir. vaka bildirimi seçin, kriterleri farklı durumlar ve bunlara göre sonuçlar olarak tanımlarız.

ÖRNEK SEÇ, karar verme sürecinde yardımcı olur. Bunda, farklı olası durumları değerlendirmek için yalnızca bir ifade kullanılır. Geliştirilen kodu yürütmek için birden fazla koşul kolayca analiz edilir. Bu case ifadesi, ifadeleri değerlendirmek için ELSE EĞER'in yerine geçen bir ifade olarak kullanılır. Excel'de yerleşik bir mantıksal işlev olarak sınıflandırılır. Bu işlevi kullanmak için kod, geliştirici sekmesi altında sunulan görsel temel düzenleyici aracılığıyla girilir.

Açıklama

Select Case'de çeşitli ifade grupları kullanılır. Bunu etkili bir şekilde kullanmak için aşağıdaki sözdizimi izlenmelidir. Java, C # ve PHP gibi diğer programlama dillerinde sunulan switch deyimine benzer.

Test için (Durum) İfadeyi seçin (Durum) İfade İfadeleri Listesi (Durum 1, Durum 2, Durum 3 vb.) Başka Durum (Diğer İfadeler) Son Seçimi

Seçilmiş durumla ilişkili terimlerin açıklaması aşağıdaki gibidir.

Test için bir ifade: Tamsayı, dize, boole, nesne ve karakter gibi farklı veri türlerini değerlendirmek gerekir.

İfade Listesi: İfadeler, girilen girişin tam eşleşmesini bulmak için durumla oluşturulur. İkiden fazla ifade varsa, bunlar virgül operatörü kullanılarak ayrılır. 'Eşittir', excel'deki =,, = gibi mantıksal operatörleri kullanarak iki ifadeyi karşılaştırmak için kullanılan bir anahtar kelimedir.

  • End Select: Yapıcı seçme durum tanımını kapatır
  • İfadeler: İfadeler, eşleşen herhangi bir ifade olup olmadığını analiz etmek için değerlendirilen ifadeleri çalıştırmak için durum kullanılarak geliştirilir.
  • Else İfadeleri: Test ifadesi herhangi bir case ifadesiyle eşleşmediğinde else ifadesini test etmektir.

VBA Select Case Bildirimi nasıl kullanılır?

VBA tarafından sağlanan seçili durum özelliği normal çalışma sayfalarında çalışmaz. Developer sekmesinin altındaki Visual Basic seçeneğini kullanmamız gerekiyor. İşletme alanındaki çeşitli küçük uygulamaları çalıştırmak için geliştirici modunda kullanıcı tanımlı işlevler ve kodlama oluşturulur.

Excel'de iç içe geçmiş if ifadelerinin olduğu durumlarda kullanılır. Çeşitli durum ifadeleriyle başa çıkmak için en iyi seçenektir. Bu seçeneği etkin bir şekilde kullanmak için aşağıdaki görevler gerçekleştirilmelidir.

  • Öncelikle, komut düğmesi kontrolünü excel sayfasına yerleştirerek bir makro oluşturması gerekir.
  • Bundan sonra, komut düğmesine sağ tıklayın ve kodu görüntüle seçeneğini seçin.
  • Kodu, komut düğmesi işlevi ile son alt işlevin arasına yerleştirin.
  • Sözdizimi hatalarını belirlemek için kodda hata ayıklayın.
  • Programı başarıyla yürütmek için derleme hatalarını bulmak için kodu derleyin
  • Eşleşen kriterlere göre farklı sonuçları gözlemlemek için girdi değerlerini değiştirin

Örnek 1 - Basit Seçimli Durum İfadesi

Bu örnek, eşleşen değeri bulmak için basit seçme durumunu anlamak içindir.

Kod:

Özel Alt Selcaseexmample () Dim A As Tamsayı A = 20 Bir Durum Seçin 10 MsgBox "İlk Durum eşleşti!" Olay 20 MsgBox "İkinci Vaka eşleşti!" Olay 30 MsgBox "Üçüncü Vaka Seçili Vakada Eşleştirildi!" Case 40 MsgBox "Dördüncü Vaka Seçili Vaka ile eşleşti!" Case Else MsgBox "Vakaların hiçbiri eşleşmiyor!" End Select End Sub

Sonuç:

Test ifadesini farklı vakalarla karşılaştırmak için dört case ifadesi ve case else ifadesi kullanılır. Mevcut örnekte, ikinci durum, A değişkeninin 20 ile eşleşmesiyle eşleştirilir.

Örnek 2 - Notları Test Etmek İçin 'Kime' Anahtar Kelimesi

Bu örnek, 'Kime' anahtar kelimesinin seçili durumla kullanımını açıklamaktadır.

Kod:

Özel Alt Selcasetoexample () Öğrenci işaretlerini tamsayı olarak karart öğrenci işaretleri = InputBox ("1 ile 100 arasındaki işaretleri girin?") Vaka öğrenci işaretlerini seçin Durum 1 ila 36 MsgBox "Başarısız!" Durum 37 ila 55 Mesaj Kutusu "C Sınıfı" Vaka 56 ila 80 Mesaj Kutusu "B Sınıfı" Vaka 81 ila 100 Mesaj Kutusu "A Sınıfı" Durum Başka Mesaj Kutusu "Aralık dışı" Son Seç Son Alt

Sonuç:

'To' anahtar sözcüğü, bir aralıktaki test ifadeleri kümesini tanımlamada yardımcı olur. Farklı durumları karşılaştırarak bir öğrencinin aldığı notu bulmada yardımcı olur. Programı çalıştırdıktan sonra sonucu almak için değeri girmemiz gerekiyor.

Çıktı, yukarıdaki ekran görüntüsünde gösterildiği gibi bir mesaj kutusuyla görüntülenir.

Örnek 3 - Seçili Büyük / Küçük Harfe Sahip 'Eşittir' Anahtar Kelimesini Kullanma

Bu örnek, 'Is' anahtar kelimesinin seçili büyük / küçük harf kullanımı ile kullanımını gösterir.

Kod:

Sub CheckNumber () Dim NumInput As Integer NumInput = InputBox ("Lütfen bir numara girin") Case NumInput Case Is = 200 MsgBox "200'den büyük veya buna eşit bir sayı girdiniz" End Sub Select

'Eşittir' anahtar kelimesi, yalnızca durum ifadeleriyle eşleşen değerleri bulmaya yardımcı olur. Çıktı üretmek için test ifadesini verilen girdi ile karşılaştırır.

Girilen değer 200'den fazla ise çıktı şekilde gösterildiği gibi elde edilir.

Örnek 4 - Değerleri Değiştirmek İçin Komut Düğmesiyle

Seçili durum ayrıca bir makro oluşturarak Komut düğmesiyle birlikte kullanılır.

Kod:

Alt renk () Soluk renk As String color = Aralık ("A1") Değer Seçin Kasa rengi Büyük / küçük harf "Kırmızı", "Yeşil", "Sarı" Aralık ("B1"). Değer = 1 Büyük / Küçük Harf "Beyaz", "Siyah "," Kahverengi "Aralık (" B1 "). Değer = 2 Durum" Mavi "," Gök Mavisi "Aralık (" B1 "). Değer = 3 Durum Başka Aralık (" B1 "). Değer = 4 End End Sub Seçin

Programda gösterildiği gibi, girdi çalışma sayfasının hücrelerinden alınır. Program, ActiveX kontrollerinden kullanılan komut düğmesine tıklandıktan sonra çalıştırılır. Bunda, test ifadelerini birleştirmek için virgül ayırıcı kullanılır.

A1 hücresindeki değer değiştiğinde, komut düğmesi aracılığıyla excel makrosunu çalıştırarak da B1 hücresinde bir değişikliğe neden olur. Aşağıda verilen ekran görüntüsüne bakabilirsiniz: -

Örnek 5 - Tek veya Çift Sayıyı Kontrol Et

Bir sayıyı kontrol etmeye yardımcı olan bu örnek çift veya tek.

Kod:

Sub CheckOddEven () CheckValue = InputBox ("Numarayı Girin") Case Seç (CheckValue Mod 2) = 0 Case True MsgBox "Sayı çift" Case False MsgBox "Sayı tektir" End Select End Sub

Kodlama, ekran görüntüsünde gösterildiği gibi geliştirilir ve sayı bile girildiğinde çıktı aşağıdaki gibi görüntülenir.

Örnek 6 - İç İçe Seçilmiş Durum İfadeleri

İç içe yerleştirme, seçilen vakanın kullanışlı bir özelliğidir ve nasıl yapıldığı gösterilir.

Kod:

Sub TestWeekday() Select Case Weekday(Now) Case 1, 7 Select Case Weekday(Now) Case 1 MsgBox "Today is Sunday" Case Else MsgBox "Today is Saturday" End Select Case Else MsgBox "Today is a Weekday" End Select End Sub

Here the select case is defined inside another select case to test a day, weekday, or weekend. Except for case 1 and 7 remaining all are weekdays (Note: case 1 is Sunday and case 7 is Saturday)

Things to Remember

  • The ‘Is’ keyword using in the statement of (case) and (case else) are not equal.
  • ActiveX control should be used in executing program through a command button taking input and displaying output in the excel sheet range of cells.
  • It is hard to run the programs in VBA if macros are disabled and always enable Macros to get the best results.
  • VBA, büyük / küçük harfe duyarlıdır ve daha iyi sonuçlar elde etmek için girdi doğru şekilde girilmelidir.

Ilginç makaleler...