Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1092to1096
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

Fehler abfangen

Fehler abfangen
Stefanglander
So nun noch einmal guten Abend,
Ich habe folgende UF:
Private Sub CommandButton1_Click()
Dim LRow As Long
If ComboBox1  "" Then
'Textbox angeben wo die Tabelle drin steht
With Workbooks("Recherche_Ergebnisse.xls").Sheets(CStr(ComboBox1))
LRow = .Cells(.Rows.Count, 1).End(xlUp).Row 'letzte Zeile?
LRow = LRow + 1 'nächste leere Zeile
.Unprotect "walker"
'MsgBox "Blattschutz ist aufgehoben!"
.Cells(LRow, 1) = (TextBox11) 'Lfd.Nr.
.Cells(LRow, 3) = (TextBox1) 'Arbeitgeber
.Cells(LRow, 5) = (TextBox2) 'PLZ
.Cells(LRow, 6) = (TextBox3) 'Ort
.Cells(LRow, 4) = (TextBox4) 'Straße
.Cells(LRow, 2) = (TextBox5) 'Erstellungsdatum
.Cells(LRow, 7) = (TextBox6) 'Telefon
.Cells(LRow, 8) = (TextBox7) 'Ansprechpartner
.Cells(LRow, 9) = (TextBox8) 'Stellenbeschreibung
.Cells(LRow, 11) = (ComboBox2) 'Stellenherkunft
.Cells(LRow, 10) = (TextBox9) 'Ausgabedatum
.Cells(LRow, 12) = (TextBox10) 'Bemerkungen
.Protect "walker"
'MsgBox "Blattschutz ist gesetzt!"
End With
With Workbooks("Recherche_Ergebnisse.xls").Sheets("Alle")
LRow = .Cells(.Rows.Count, 1).End(xlUp).Row 'letzte Zeile?
LRow = LRow + 1 'nächste leere Zeile
.Cells(LRow, 1) = (TextBox11) 'Lfd.Nr.
.Cells(LRow, 4) = (TextBox1) 'Arbeitgeber
.Cells(LRow, 6) = (TextBox2) 'PLZ
.Cells(LRow, 7) = (TextBox3) 'Ort
.Cells(LRow, 5) = (TextBox4) 'Straße
.Cells(LRow, 2) = (TextBox5) 'Erstellungsdatum
.Cells(LRow, 8) = (TextBox6) 'Telefon
.Cells(LRow, 9) = (TextBox7) 'Ansprechpartner
.Cells(LRow, 10) = (TextBox8) 'Stellenbeschreibung
.Cells(LRow, 12) = (ComboBox2) 'Stellenherkunft
.Cells(LRow, 11) = (TextBox9) 'Ausgabedatum
.Cells(LRow, 13) = (TextBox10) 'Bemerkungen
.Cells(LRow, 3) = (TextBox13) 'Zeit
With Workbooks("Recherche_Ergebnisse.xls").Sheets("Variablen")
.Range("M2") = (TextBox11) 'Lfd.Nr
End With
'Textboxen leeren
TextBox1 = ""
TextBox2 = ""
TextBox3 = ""
TextBox4 = ""
TextBox5 = ""
TextBox6 = ""
TextBox7 = ""
TextBox8 = ""
TextBox9 = ""
TextBox10 = ""
TextBox13 = ""
ComboBox2.ListIndex = -1
ComboBox1.ListIndex = -1
End With
End If
Unload UserForm1
End Sub
wie kann ich eine Fehlermeldung in Form einer MSG-Box anzeigen lassen, wenn der Anwender die Textboxen 1-8 nicht ausgefüllt hat?
Mag mir jemand helfen ?
Gruss
Stefan

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Fehler abfangen
12.08.2009 23:16:37
Lenni
Moin Stefan!
Danke für Deine Urlaubswünsche!!! ...ob ich Fische fange, weiß ich noch nicht... ...aber ich werde wohl viele Fotos machen. Die kriegt Ihr dann alle irgendwie zu sehen!!!
Also für Deine erneute Anfrage versuch es mal so:
https://www.herber.de/bbs/user/63793.xls
...und übertrage die VBA-Anweisungen dementsprechend auf alle TextBoxen, wo Du einen Pflichteintrag haben möchtest.
Achte auch darauf, dass das UserForm Initialize auf Activate gewechselt hat!!
Viele Grüße aus dem hohen Norden!
Lenni

PS ...Rückmeldung wäre nett. Danke!
Anzeige
Fehler korrigiert ...
13.08.2009 04:28:28
Matthias
Hi Lenni
Userbild
;o)
Gruß Matthias
Von: Nicht-Lemmi, der da Lenni ist!
13.08.2009 10:31:26
Lenni
...ich erkläre Dich hiermit zu meinem persönlichen Excel-Polizisten ... ;-)
Gut, das es Dich gibt!!! Bin für Deine Anregungen immer offen!!! ...denn wie gesagt: Ich als Schmalspur-VBA'ler lerne immer noch dazu... ...aber - in Erinnerung - ein bißchen was, weis ich doch auch schon....
Danke nochmals!!
Gruß
Lenni

AW: Von: Nicht-Lemmi, der da Lenni ist!
14.08.2009 15:08:59
Stefanglander
sorry auch wenn ich die Superbeispieldatei habe, weiß ich leide rnicht wo ich den Code einbauen muss.
Gruss
Stefan
Anzeige
AW: Von: Nicht-Lemmi, der da Lenni ist!
14.08.2009 18:14:10
Lenni
Also Du hast doch Dein "CommandButton1_Click()-Ereignis". Und darunter "baust" Du folgendes ein!
With TextBox1
If Len(.Text) < 1 Then
MsgBox "Mach hiär in TextBox1 was rein! ...sonst nix passiert", 64, "Must Duuhh Eintrag machen!"
.SetFocus
.SelStart = 0
.SelLength = Len(.Text)
Exit Sub
End If
End With

Am besten irgendwo nach diesen Zeilen...
Private Sub CommandButton1_Click()
Dim LRow As Long

...oder nach diesen Zeilen...
If ComboBox1 "" Then
'Textbox angeben wo die Tabelle drin steht
With Workbooks("Recherche_Ergebnisse.xls").Sheets(CStr(ComboBox1))

(Teste mal, was bei Dir passiert, wenn Du es vor oder nach dieser Variante setzt!!)
...und vor dieser Zeile...
LRow = .Cells(.Rows.Count, 1).End(xlUp).Row 'letzte Zeile?
Und wie gesagt: Du mußt Dir diese Prüfung für jede Textbox zurecht basteln. Geprüft wird in der Reihenfolge, wie Du den Code schreibst.
Ist denn in jeder Textbox ein Eintrag, in der Du einen Zwangseintrag haben möchtest, erst dann geht es aus der Prüfung heraus und die Einträge werden in Dein Tabellenblatt übergeben.
Und meine Quatsch-Äußerungen in der MsgBox änderst Du natürlich nach Deinen Bedürfnissen!
Gruß
Lenni

PS ...ich kann mich evtl. erst wieder nächste Woche melden, da ich hier voll in den Reisevorbereitungen stecke... ...und ich weiß noch nicht, ob ich einen Internetzugang in meiner Hütte am Fjord habe...
Anzeige
Gute Reise wünsch
14.08.2009 18:27:08
Stefanglander
Hallo Lenni,
danke Dir das Du Dir noch die Zeit genommen hast.
Ich wünsche Dir einen Supi-Urlaub, möge das Wetter mitspielen und die Erholung so verlaufen wie Du/ Ihr Euch das vorstellt.
Das mit dem Fehler abfangen haut übrigens nun super hin.
Alles Gute
Stefan

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige