Archiv
Ansicht:   
Suche   erweiterte Suche

Nachricht aus dem Archiv

Jörg Lorenz schrieb am 05.November.2005, 14:28:03 in der Kategorie web.coding

VBA: Select Case und If

Hallo Natascha,

also los ...  ;-)

> Kannst du mir vielleicht den Unterschied zwischen select Case und der If-
> Anwendung erklären?

Im Prinzip sind das zwei verschiedene Möglichkeiten, um zu einem Ziel zu kommen. Welche eingesetzt wird, hängt wahrscheinlich auch von den Vorlieben ab oder welche Möglichkeit weniger Schreibarbeit bedeutet.

Bei der Programmierung geht es ja häufig darum, einen konkreten Zustand abzufragen und dann darauf zu reagieren. Das ist so, wie bei der Fernbedienung eines Fernsehers, bei dem drei Sender eingestellt sind:

Wenn die 1 gedrückt wird, soll ARD gezeigt werden, wenn die 2 gedrückt wird, soll ZDF erscheinen, wenn die 3 gedrückt wird, soll RTL erscheinen, sonst nur das Rauschbild ohne Sender. Genau so kann man es sich mit Select Case und If vorstellen.

Mit Select Case würde das vereinfacht so aussehen:

i = InputBox(\"Bitte die Sendernummer eingeben:\")
Select Case i
    Case 1
        MsgBox \"ARD\"
    Case 2
        MsgBox \"ZDF\"
    Case 3
        MsgBox \"RTL\"
    Case Else
        MsgBox \"Kein Sender programmiert\"
End Select



Mit Case werden also die Möglichkeiten, die auftreten können, abgefragt und eine Zeile tiefer erfolgt dann die Anweisung, was passieren soll.

Mit der If-Anweisung würde genau das Gleiche so aussehen:

i = InputBox(\"Bitte die Sendernummer eingeben:\")
If i = 1 Then
    MsgBox \"ARD\"
ElseIf i = 2 Then
    MsgBox \"ZDF\"
ElseIf i = 3 Then
    MsgBox \"RTL\"
Else
    MsgBox \"Kein Sender programmiert\"
End If



Also: Wenn das so ist, dann mache das, sonst wenn das so ist, mache dies, sonst wenn das so ist, mache jenes, sonst das.

Dieses \"Wenn das so ist\" nennt man auch Wahrheitsprüfung. Was passieren soll, wenn es so ist, nennt man Argument 1, was sonst passieren soll, nennt man Argument 2. Das könnte man so veranschaulicht schreiben:

If Wahrheitsprüfung Then
    Argument 1
Else
    Argument 2
End If



Wobei es gerade bei der IF-Anweisung sehr viele Möglichkeiten hinsichtlich der Syntax gibt. ich weiß nicht, welche Euch beigebracht werden soll.

Schwieriger wird es dann bei den Verschachtelungen, weil es da DANN- und SONST-Verschachtelungen gibt. Arbeitet Ihr damit auch schon?

> Ich komme einfach nicht weiter. Jetzt haben wir erschwerte Aufgaben
> bekommen, die ich einfach nicht lösen kann.Vielleicht hilft mir deine
> Erklärung ja schon.

Dann stelle einfach weiter Deine Fragen.  ;-)

Viele Grüße

Jörg

Archiv
Ansicht:   
Suche   erweiterte Suche
Auf unserer Web-Seite werden Cookies eingesetzt, um diverse Funktionalitäten zu gewährleisten. Hier erfährst du alles zum Datenschutz