Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1828to1832
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

iButton lässt sich nicht definieren

iButton lässt sich nicht definieren
15.05.2021 11:53:20
MikeY
Hallo Zusammen,
ich bin absoluter VBA Anfänger. Aber schon verdammt Süchtig danach. Ich würde am liebsten alles nur noch irgendwie Programmieren.
Aber nun zu meinem Problem:
Ich habe mehrere Inputboxen hintereinander geschalten. Nun möchte ich wenn bei einer Inputbox abgebrochen wird eine Abfrage erstellen ob tatsächlich abgebrochen werden soll. Wenn ja dann alles zuvor eingetragene löschen. Wenn nein dann die Inputbox bei der abgebrochen wurde wieder öffnen.
Die abfrage habe ich momentan nur in einen der Codes eingefügt aber bring es nicht zum laufen kann mir jemand sagen wo das Problem ist ?
Ich habe den gesamten Code eingefügt und den Teil um den es geht habe ich fett markiert.
Vielen Dank vorab.

Sub CommandButton1_Click()
Dim i As Variant
i = InputBox("Bitte die Auftragsnummer vollst?ndig angeben. (D1A012345)", "Auftrag ?")
If i = "" Then Exit Sub
Cells(Range("A2").End(xlDown).Row + 1, 1).Select
Cells(Rows.Count, "A").End(xlUp).Offset(1).Value = i
Call CommandButton1_Click2
End Sub
Sub CommandButton1_Click2()
Dim i As Variant
Dim iButton As Integer
i = InputBox("Was war der Grund f?r den Ausschuss ?", "Problemursache ?")
If i = "" Then iButton = MsgBox("wollen sie wirklich abbrechen ?", vbYesNo) Else
If i  "" Then ActiveCell.Offset(0, 1) = i
If iButton = vbYes Then
ActiveCell.EntireRow.Delete
Exit Sub
If iButton = vbNo Then
Call CommandButton1_Click2
End If
End If
Call CommandButton1_Click3
End Sub
Sub CommandButton1_Click3()
Dim i As Variant
i = InputBox("Was wurde unternommen?", "Kurzfristige Ma?nahme ?")
If i = "" Then Exit Sub
ActiveCell.Offset(0, 2) = i
Call CommandButton1_Click4
End Sub
Sub CommandButton1_Click4()
Dim i As Variant
i = InputBox("Was ist noch zu tun ?", "Nachgelagerte Ma?nhamen ?")
If i = "" Then Exit Sub
ActiveCell.Offset(0, 3) = i
Call CommandButton1_Click5
End Sub
Sub CommandButton1_Click5()
Dim i As Variant
i = InputBox("Bitte deinen Namen eintragen ?", "Name ?")
If i = "" Then Exit Sub
ActiveCell.Offset(0, 4) = i
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("A:A")) Is Nothing Then Exit Sub
If Target.Count > 1 Then Exit Sub
If Target = "" Then
Target.Offset(0, 5).ClearContents
Else:
Target.Offset(0, 5) = CDate(Format(Now, "dd.mm.yyyy"))
End If
End Sub

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: iButton lässt sich nicht definieren
15.05.2021 13:27:30
ralf_b
programmier dir doch eine Userform mit ein paar mehr Eingabefeldern, anstatt immer eine inputbox nach der Anderen aufzurufen.
Die Prüfungen der Eingaben lassen sich dann besser durchführen.
gruß
rb
AW: iButton lässt sich nicht definieren
17.05.2021 17:53:20
MikeY
Hallo Ralf,
ich verstehe deinen Einwand und werde mich im nächsten Schritt daran versuchen.
Aber für ein besseres VBA Verständnis würde mich sehr interessieren wo der Fehler in meinem Code liegt.
Evtl. kann mir ja doch noch jemand helfen bitte.
Grüße MikeY
AW: iButton lässt sich nicht definieren
17.05.2021 23:29:32
Yal
Hallo Mike,
willkommen im Klub.
Achte auf deine "Indentation": nicht nur fürs Auge, sondern auch für den Übersicht.
Vermeide die Vermischung von If-Then-Else auf eine Zeile und auf mehrere Zeile. Setze -als Anfänger- lieber auf sauberen Mehrzeiligen, bis Du diese voll im Griff hast.
Vermeide auch mehrere Anweisungen auf einer Zeile, getrennt durch ":".
Vermeide die "wilde" Absprung (Exit Sub). Lieber saubere "If-Then-Else". Hier auch: zuerst sauber, dann mutig.
Der Fehler kommt wahrscheinlich wegen die einzeiligen/mehrzeiligen If-Then-Else: Du hast den Übersicht verloren.
Eigentlich sollte es eher so ausehen:

Sub CommandButton1_Click2()
Dim i As Variant
Dim iButton As Integer
i = InputBox("Was war der Grund f?r den Ausschuss ?", "Problemursache ?")
If i = "" Then
If MsgBox("wollen sie wirklich abbrechen ?", vbYesNo) = vbYes Then
ActiveCell.EntireRow.Delete
Else
CommandButton1_Click2
End If
Else
ActiveCell.Offset(0, 1) = i
CommandButton1_Click3
End If
End Sub
Oder, wenn man das gesamte sauber hält:

Private Ergebnis(4) As Variant
Private Abgebrochen As Boolean
Sub CommandButton1_Click()
Dim i As Variant
i = InputBox("Bitte die Auftragsnummer vollst?ndig angeben. (D1A012345)", "Auftrag ?")
If i = "" Then
Abgebrochen = True
Else
Ergebnis(0) = i
CommandButton1_Click2
End If
If Not Abgebrochen Then
ActiveCell.Resize(1, 5) = Ergebnis
End If
End Sub
Sub CommandButton1_Click2()
Dim i As Variant
Dim iButton As Integer
i = InputBox("Was war der Grund f?r den Ausschuss ?", "Problemursache ?")
If i = "" Then
If MsgBox("wollen sie wirklich abbrechen ?", vbYesNo) = vbYes Then
Abgebrochen = True
Else
CommandButton1_Click2
End If
Else
Ergebnis(1) = i
CommandButton1_Click3
End If
End Sub
Sub CommandButton1_Click3()
Dim i As Variant
i = InputBox("Was wurde unternommen?", "Kurzfristige Ma?nahme ?")
If i = "" Then
Abgebrochen = True
Else
Ergebnis(2) = i
CommandButton1_Click4
End If
End Sub
Sub CommandButton1_Click4()
Dim i As Variant
i = InputBox("Was ist noch zu tun ?", "Nachgelagerte Ma?nhamen ?")
If i = "" Then
Abgebrochen = True
Else
Ergebnis(3) = i
CommandButton1_Click5
End If
End Sub
Sub CommandButton1_Click5()
Dim i As Variant
i = InputBox("Bitte deinen Namen eintragen ?", "Name ?")
If i = "" Then
Abgebrochen = True
Else
Ergebnis(4) = i
End If
End Sub
VG
Yal
Anzeige
AW: iButton lässt sich nicht definieren
18.05.2021 15:11:50
MikeY
Hey Yal,
vielen Dank für deine Ausführung. Insbesondere für mein Verständnis war das enorm wichtig und hat auch klick gemacht.
Ich hatte tatsächlich den Überblick verloren.
Problem gelöst und wieder was gelernt. Vielen Dank dafür.
Grüße MikeY
Vielen Dank für die Rückmeldung...
18.05.2021 15:21:59
Yal
... es freut mich, Dich ein bischen Licht im Dunkel gebracht zu haben.
VG
Yal

330 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige