Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1520to1524
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

einfacher Errohandler - ich häng fest!

einfacher Errohandler - ich häng fest!
25.10.2016 16:34:34
Jens
Hallo an alle,
ich sitz grad in der Patsche
Hab in der Userform eine Textbox und ein Label
1.) Wenn man vergisst was in die Textbox zu schreiben,
dann Fehlermeldung ausgeben!
>>> man wird also dezent genötigt die Textbox doch bitteschön zu betexten! 2.) Hat man die Textbox betextet, dann weiter mit dem Code ...
Mein Problem:
Es wird immer wieder die MsgBox angezeigt ...
Könnt ihr mir mal den Weg aus dem Irrgarten zeigen ;)
VG, Jens
Private Sub UserForm_Initialize()
CmdExit.Enabled = False
End Sub
Private Sub CmdExit_Click()
Unload Me
End Sub
Private Sub TextBox1_Change()
Label1 = TextBox1.Text             ' schreibt den Text in das Kontrollfeld
End Sub
Private Sub Cmd1_Click()               ' Cmd1 = Schaltfläche "Bestätigen"
On Error GoTo Errorhandler
TextBox1 = ""                          'Wenn keine Eingabe erfolgt ist, dann weiter mit  _
Errorhandler
Errorhandler:
MsgBox "Bitte Namen eingeben !"
TextBox1.SetFocus              'Curser wieder ins Textfeld setzten
Exit Sub                               'verlassen des Errorhandlers
'======= ENDE ERROR HANDLER =========
'   hier sollte es jetzt eigentlich mit dem Code weitergehen
Label1.BackColor = RGB(124, 185, 38)   'Das Label grün färben
CmdExit.Enabled = True                 'Die Schaltfläche wird wieder aktiviert
End Sub
Hier noch die Beispielmappe:
https://www.herber.de/bbs/user/109014.xlsm

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
probier mal...
25.10.2016 16:45:34
Helmut
Private Sub Cmd1_Click() ' Cmd1 = Schaltfläche "Bestätigen"
If TextBox1 = "" Then 'Wenn keine Eingabe erfolgt ist, dann weiter mit Errorhandler
MsgBox "Bitte Namen eingeben !"
TextBox1.SetFocus 'Curser wieder ins Textfeld setzten
Exit Sub 'verlassen des Errorhandlers
End If
Gruß Helmut
AW: einfacher Errohandler - ich häng fest!
25.10.2016 16:52:01
Michael
Hi,
so:
Private Sub Cmd1_Click()               ' Cmd1 = Schaltfläche "Bestätigen"
If Trim(TextBox1) = "" Then
MsgBox "Bitte Namen eingeben !"
TextBox1.SetFocus              'Curser wieder ins Textfeld setzten
Else
Label1.BackColor = RGB(124, 185, 38)   'Das Label grün färben
CmdExit.Enabled = True                 'Die Schaltfläche wird wieder aktiviert
End If
End Sub
Gruß,
M.
Anzeige
AW: einfacher Errohandler - ich häng fest!
25.10.2016 17:00:16
Jens
Danke Ihr beiden,
das funktioniert.
mals sehen was passiert wenn die Listbox dazukommt ;)
Gruß,
Jens
Problem mit Code für "falsche Listbox"
25.10.2016 18:40:40
Jens
Hallo Leute,
nachdem ich hier einen prima Code für eine "Falsche Listbox" gefunden habe,
möchte ich diesen natürlich in mein o.g. Beispiel einpflanzen.
Wie üblich gehts nicht...
Also hier gibts den original Beispielcode
http://www.excel-werkstatt.de/index.php?site=download/download&kat=14&anzeigedl=21
In mein Beispiel hab ich den auch schon eingebaut und
die Farben sind für meine Bedürfnisse geändert.
Was ich jetzt gern möchte ist wie bei der "richtigen Listbox" eine Auswahl anklicken
und die Ausgabe erscheint in dem Kontrollfeld.
Könnt Ihr da wieder behilflich sein?
Grüße, J.
Hier meine geänderte Beispielmappe
https://www.herber.de/bbs/user/109015.xlsm
Anzeige
AW: Problem mit Code für "falsche Listbox"
25.10.2016 18:59:07
Michael
Hi,
dann so:
Private Sub Label_Click()
'  Range("A1").Value = Label.Caption
UserForm1.LblKontrollfeld = Label.Caption
Farbe
Label.BackColor = RGB(255, 255, 255)    'Auswahl auf Farbe "Weiss" setzen
End Sub
Gruß,
M.
AW: Problem mit Code für "falsche Listbox"
25.10.2016 19:17:30
Helmut
Hallo Jens,
Du hast doch gesehen, dass der Begriff in Zelle A1 geschrieben wird.
Also im Makro nach A1 suchen, und A1-so wie es Michael gemacht hat,durch
das Userform1.LblKontrollfeld ersetzen.
Na-nicht so schwer-oder :-)
Learning by doing
Gruß Helmut
AW: Problem mit Code für "falsche Listbox"
25.10.2016 22:17:57
Jens
Ganz Großes Danke für Eure Hilfe
es funkt. jetzt im großen und ganzen
Anzeige
Daten aus anderen Tabellenblatt einlesen
26.10.2016 18:37:12
Jens
Hallo Leute
hab doch noch ein glitzekleines Problemchen ...,
Die Daten die in der "falschen Listbox)angezeigt werden sollen,
stehen in einem anderen Tabellenblatt drin
z.b. Worksheets("Musterdatei").Range("D8:D11")
... wie sage ich dem Code das?
Private Sub UserForm_Initialize()
Dim wkb As Workbook             '?
Dim wks As Worksheet            '?
Dim LB As Control
Dim LabelCount1 As Integer
Dim i As Long
Dim t As Long
Dim DLetzte As Long
DLetzte = IIf(IsEmpty(Range("D65536")), Range("D65536").End(xlUp).Row, 65536)
t = 0
For i = 8 To DLetzte
Set LB = UF_Übersicht3.Frame1.Add("Forms.Label.1", Range("D" & i).Value, True)
With LB
.Top = t
.Left = 0
.Width = 130
.Caption = Range("D" & i).Value
.ForeColor = Range("D" & i).Font.Color
.Font.Size = 12
End With
LabelCount1 = LabelCount1 + 1
ReDim Preserve cLabel(1 To LabelCount1)
Set cLabel(LabelCount1).Label = LB
t = t + 18
Next i
UF_Übersicht3.Frame1.ScrollHeight = LabelCount1 * 18
End Sub
Danke nochmals für die Hilfe
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige