Clever-Excel-Forum

Normale Version: Neue Frage aufploppen, wenn Bedingung nicht erfüllt
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo liebe Forumsteilnehmer,

ich habe mich in diesem Forum angemeldet, weil ich die Excel-Programmierung lernen möchte. Einige Sachen habe ich schon per YouTube Videos herausgefunden. Allerdings benötige ich Hilfe, da ich nicht weiß welche Stichworte ich brauche, um weitere Antworten zu bekommen. Mir reicht es auch vollkommen, wenn mir jemand den vorhandenen Threat zeigt, ein Stichwort nennt, damit ich selber suchen kann, oder einen Link schickt.
Folgende Aufgabe habe ich mir gestellt:
Ich möchte Eine Abfolge verschiedener Fragen programmieren, die einen durch ein Menü führt (siehe Anhang).
Wenn Frage 1 mit Ja beantwortet wird, soll ein Text ("Personalausweis wird ausgestellt") ausgegeben werden.
Wenn Frage 1 mit Nein beantwortet wird, soll Frage 2 angezeigt werden.
Wird Frage 2 mit Ja beantwortet, soll ein Text ("Personalausweis wird ausgestellt") ausgegeben werden.
Wenn Frage 2 mit Nein beantwortet wird, soll Frage 3 angezeigt werden, usw.

Frage:
Wie schaffe ich es dass:
a) Frage 2 und Folgende erst angezeigt werden, wenn Frage 1 bzw. 2, ... abschließend beantwortet wurden?
b) Wie schaffe ich es, dass das Ergebnis "Personalausweis wird (nicht) ausgestellt" erst angezeigt wird, wenn die Antwort abgeschlossen ist?

Aktueller Stand:
Die Fragen werden über eine Checkbox beantworet.
Die Checkbox ist über die Wenn-Funktion mit der Checkbox verknüpft und gibt das gewünschte Ergebnis aus.

Über jede Hilfe wäre ich dankbar!

Lg,

Moichn
Hallo,

Code:
Public Sub Ausstellung_Ausweis()
Dim boAusweis As Boolean

If MsgBox("Hatte die Person bereits einen Personalausweis?", vbYesNo, "Personalausweis?") = vbYes Then
    boAusweis = True
ElseIf MsgBox("Gültiger Reisepass vorhanden?", vbYesNo, "Reisepass?") = vbYes Then
    boAusweis = True
ElseIf MsgBox("Deutsche Staatsangehörigkeit?", vbYesNo, "Staatsangehörigkeit?") = vbYes Then
    If MsgBox("Ist die Person älter als 16 Jahre?", vbYesNo, "Alter?") = vbYes Then
        boAusweis = True
    End If
End If

If boAusweis Then
    MsgBox "Ausweis wird ausgestellt."
Else
    MsgBox "Kein Ausweis wird ausgestellt"
End If

End Sub

Gruß Werner
Vielen lieben Dank für die Hilfe Werner.
Ich habe mir direkt einen neuen Fall ausgedacht, um zu versuchen es selber zu programmieren :)

Falls jemand die gleiche Frage hatte, kann ich folgende Hilfe geben:

1. Entwicklertools aktivieren
https://www.youtube.com/watch?v=6ZB3fVXX8F8
Datei --> Optionen --> Menüband anpassen --> Haken bei "Entwicklertools" setzen --> OK

2. Visual Basic Editor nutzen
https://www.youtube.com/watch?v=47D-86BYZFo

3. Makro mit Schaltfläche verknüpfen
https://support.microsoft.com/de-de/offi...e645fe3155
unter "Ausführen eines Makros durch Klicken auf eine Schaltfläche"