Brauche Hilfe von Excel profi's?

...komplette Frage anzeigen

3 Antworten

Weil es mich selbst interessiert hat noch ein Ansatz:

Alternative 3 wäre eine Kombination aus 1 und 2 - ich muss das als neue Antwort schreiben, um Bilder anhängen zu können:
Die Logik bildest Du in einer normalen Tabelle ab. Rahmenbedingung für mein Beispiel: Es gibt immer nur JA / NEIN als Auswahl oder eben ein OK, um einfach den nächsten Schritt aufzurufen.
Die Tabelle funktioniert folgendermaßen: JA/NEIN wird farblich markiert (egal welche Farbe), OK ist farblos.
Bei JA geht es in der gleichen Spalte eine Zeile nach unten, ebenso bei OK
Bei NEIN geht es eine Spalte nach rechts und eine Zeile nach unten. Für den beispielhaften Code muss die Tabelle in A1 beginnen.

Ich habe darauf verzichtet eine Logik einzubauen, um wieder zurück in einen Pfad zu springen. Bei jedem Nein geht es in eine neue Spalte, u.U. müssen Einträge dann mehrfach vorkommen (im Beispiel u.a. die Anweisung Ware aushändigen)

Du musst dann eine Userform erstellen (Ribbon Entwicklertools > Visual Basic. Dort Menü Einfügen > Userform). Diese benötigt einfach ein Beschriftungsfeld und zwei Commandbutton.

Mit Rechtsklick auf den Eintrag UserForm im Menü kannst Du zwischen Code anzeigen und Objekt anzeigen hin und her schalten. Bei Code folgendes reinstellen:

Private Sub CommandButton1_Click()
If CommandButton1.Caption = "Ende" Then UserForm1.Hide
auswahl = "Links"
ablauf (auswahl)
End Sub
Private Sub CommandButton2_Click()
auswahl = "Rechts"
ablauf (auswahl)
End Sub
Function ablauf(auswahl As String) As String
zeile = zeile + 1
If auswahl = "Rechts" Then spalte = spalte + 1
If Cells(zeile, spalte).Value = "" Then
UserForm1.Label1.Caption = "Prozess abgeschlossen!"
UserForm1.CommandButton1.Caption = "Ende"
UserForm1.CommandButton2.Visible = False
Exit Function
Else:
UserForm1.Label1.Caption = Cells(zeile, spalte).Value
End If
If Cells(zeile, spalte).Interior.Color <> 16777215 Then
UserForm1.CommandButton1.Caption = "JA"
UserForm1.CommandButton2.Visible = True
UserForm1.CommandButton2.Caption = "NEIN"
Else:
UserForm1.CommandButton1.Caption = "OK"
UserForm1.CommandButton2.Visible = False
End If
End Function

Im Menü wieder Einfügen und noch ein "Modul" anlegen. Dort hinein

Public zeile As Integer
Public spalte As Integer
Sub anfangen()
zeile = 0
spalte = 1
UserForm1.Label1.Caption = "Bereit?"
UserForm1.CommandButton1.Caption = "OK"
UserForm1.CommandButton2.Visible = False
UserForm1.Show
End Sub

Auf einem Tabellenblatt (egal wo), legst Du Dir einen Startknopf an:
Entwicklertools > Einfügen > Formularsteuerelemente. Den Button (oben rechts) "Schaltfläche". Diesem weist Du das Makro "Anfangen" zu.

Damit startest Du den Aufruf der Userform. Die Userform zeigt die Texte aus der Tabelle an. An Logik wird nur die Beschriftung der Button geändert und entsprechend der Antwort nach unten bzw. unten und rechts weitergegangen.

 - (Excel, Auswahlbutton)  - (Excel, Auswahlbutton)
nikilinis 06.12.2015, 09:32

Du bist ja echt der hammer! :)))
Muss ich nachher gleich mal ausprobieren!
Weiss nicht wie ich dir danken soll! ;)
Ganz grosses Dankeschön!

0

Mir würden zwei Lösungswege einfallen:
1. In einer normalen Tabelle mit etwas WENN-DANN Logik, um die Texte ein- und auszublenden (Screenshot 1)

Für die Auswahlfelder kann man Datenprüfung > Liste verwenden, damit der Anwender nicht irgendwas reintippt. Für die Texte wird dann auf die vorherige Antwort geprüft. Wenn es ein geradliniger Ablauf ist, den Du dokumentieren willst, müsste das ganz gut gehen. Wenn immer wieder Sprünge in andere Teilprozesse kommen, wird die Logik eben umfangreicher.

2. Eine Userform erstellen (Screenshot2). Dafür musst Du Dich aber in VBA Programmierung etwas einarbeiten, denn die Logik, was angezeigt wird und v.a. wie auf die Antworten reagiert wird, muss programmiert werden.

 - (Excel, Auswahlbutton)  - (Excel, Auswahlbutton)
nikilinis 06.12.2015, 09:05

Vielen lieben Dank für diese tolle Antwort! Hast mir sehr geholfen!

0

Für sowas gibt's doch InfoPath/SharePoint. Excel ist dafür nicht vorgesehen, obwohl sicher machbar.. Ist halt wie ein Buch in PowerPoint schreiben...

nikilinis 06.12.2015, 09:05

Danke, deine Antwort hat mir sehr weitergeholfen!

0

Was möchtest Du wissen?