Excel Forum

Excel Forum (http://www.excel.web.tr/index.php)
-   Access Dersanesi (http://www.excel.web.tr/forumdisplay.php?f=171)
-   -   SELECT - CASE Karar Yapısı (http://www.excel.web.tr/showthread.php?t=100391)

Taruz 19-05-2011 21:39

SELECT - CASE Karar Yapısı
 
GİRİŞ

Access ile hazırladığımız uygulamalarımızda yapmak istediklerimiz arttıkça artık menülerin, sihirbazların, makroların yetersiz kaldığını hissederiz.. Ama biz uygulamalarımızın daha özgün, esnek ve de kullanışlı olmasını istiyoruz.. Bu da demektir ki artık ufak ufak kod yazmayı öğrenmenin zamanı gelmiştir..





Merhaba arkadaşlar..

Select Case karar yapısı bir önceki konuda işlediğimiz İf - Then - Else karar yapısının (özellikle Else kısmının) daha efektif kullanılmasını sağlar.. Koşul sonucunun döndürdüğü değerlere göre yapılacak işlemler çoksa yani değişkenin döndürdüğü sonuç birden fazlasya select case kullanmak kesinlikle daha iyidir..

Temel yapı bu şekilde..:



Select Case Değişken

Case Değişken değeri
Değer eşitlendiğinde yapılmasını istediğimiz işlemler..
Case Değişken değeri
Değer eşitlendiğinde yapılmasını istediğimiz işlemler..
Case Else
Değişken değeri hiç bir koşulla örtüşmediğinde yapılmasını istediğimiz işlemler..

End Select



Formunuzun üzerine iki adet metin kutusu (metin1, metin2) ve bir komut düğmesi (komut1) yerleştirin..

Düğmenin tıklandığında olayına bu yapıyı kullanalım şimdi:


Kod:

Select Case Metin1
Case "elma"
Metin2 = "meyve"
Case "ıspanak"
Metin2 = "sebze"
End Select



Tercüme edelim..:

metin1 de "elma" yazıyorsa metin2 de "meyve" yazsın "ıspanak" yazıyorsa "sebze" yazsın

Geliştirelim..:


Kod:

Select Case Metin1
Case "elma"
Metin2 = "meyve"
Case "ıspanak"
Metin2 = "sebze"
Case Else
Metin2 = "türü belli değil"
End Select



metin1 de "elma" yazıyorsa metin2 de "meyve" yazsın "ıspanak" yazıyorsa "sebze" yazsın. Bu değerlerden başka değer yazıyorsa "türü belli değil" yazsın.

Şartları geliştirelim..:


Kod:

Select Case Metin1
Case "elma", "portakal" 'metin1, bu iki değerden biri ise
Metin2 = "meyve" 'meyve yazsın
Case "ıspanak", "lahana" 'metin1, bu iki değerden biri ise
Metin2 = "sebze" 'sebze yazsın
Case Else 'hiçbiri ise
Metin2 = "türü belli değil" 'bunu yazsın
End Select




Select Case yapısını çok değişik şekillerde fonksiyonlar ve operatörler yardımı ile de kullanabiliriz.. Bu tamamen sizin ne istediğinize bağlı..

Örnek vermeden olmaz..:


Kod:

Select Case Metin1
    Case 1 To 5
    Metin2 = "1 ile 5 arasında sayı girdiniz."
    Case 6 To 10
    Metin2 = "6 ile 10 arasında sayı girdiniz."
    Case 11 To 15
    Metin2 = "11 ile 15 arasında sayı girdiniz."
    Case Is > 15
    Metin2 = "15 den büyük bir sayı girdiniz."
End Select



Bu da farklı bir örnek.. Dikkat edin içinde If - Then - Else de kullandık..:


Kod:

Select Case Metin1
    Case 1 To 5
        If Metin1 = 3 Then
        Metin2 = "3 rakamını girdiniz.."
        Else
        Metin2 = "1 ile 5 arasında sayı girdiniz."
        End If
    Case 6 To 10
    Metin2 = "6 ile 10 arasında sayı girdiniz."
    Case 11 To 15
    Metin2 = "11 ile 15 arasında sayı girdiniz."
    Case Is > 15
    Metin2 = "15 den büyük bir sayı girdiniz."
End Select



Taruz... 2011

İsmail Küçükşengün 21-05-2011 12:47

Taruz hocam,

Bu önemli bilgilendirme için çok teşekkürler.


Saat 06:19

Powered by vBulletin Version 3.7.2
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.