Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Leere Textboxen in einer MsgBox ausgeben

Leere Textboxen in einer MsgBox ausgeben
20.05.2019 17:25:39
Marcel
Hallo ihr lieben,
hätte mal eine Frage, irgendwie stelle ich mich zu blöd an.
Ich habe ein Fomular mit über 30 Textfeldern, dazu würde ich gern bestimmte Felder prüfen ob diese Leer sind und dann die leeren Textboxen mit einem bestimmten Titel in einer MsgBox anzeigen lassen und vielleicht noch die erste Textbox davon selectieren.
Mein erster Versuch klappt irgendwie nicht:

If Not Len(Me.cob_Durchgang.Text) Or Len(Me.TextBox33.Text) > 0 Then
MsgBox "Prüfen Sie Ihre Eingaben. Es fehlen folgende für die Erstellung des Dokumentes: "
Exit Sub

Dann habe ich versucht das über ein Array zu machen:
Dim txtboxnamen() As Variant
txtboxnamen = Array("Me.cob_Durchgang.Text", "Me.TextBox33.Text")
For zaehler = 0 To 1
If Not txtboxnamen(zaehler) > 0 Then
MsgBox txtboxnamen(zaehler) & vbNewLine
End If
Next zaehler

Beides klappt irgendwie nicht nach meinem Wunsch.
Könnt ihr mir da helfen?
Gruß
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Leere Textboxen in einer MsgBox ausgeben
20.05.2019 17:54:17
Hajo_Zi
controls("TextBox" & Zahler).Text

Beiträge von Werner, Luc, robert, J.O.Maximo und folgende lese ich nicht.
Die Beiträge werden auch ignoriert, es erfolgt keine Antwort.
AW: Leere Textboxen in einer MsgBox ausgeben
20.05.2019 18:10:13
Marcel
Hallo Hajo,
wie so jetzt:
   Dim txtboxnamen() As Variant
txtboxnamen = Array("cob_Durchgang", "TextBox33")
For zaehler = 0 To 1
If Not Start_Maske.Controls(txtboxnamen(zaehler)).Text > 0 Then
MsgBox txtboxnamen(zaehler) & vbNewLine
End If
Next zaehler

Anzeige
AW: Leere Textboxen in einer MsgBox ausgeben
20.05.2019 18:20:35
Daniel
Hi
Variante 1 geht so:
If Not Me.cob_Durchgang.Text = "" Or Me.TextBox33.Text = "" Then
MsgBox "Prüfen Sie Ihre Eingaben. Es fehlen folgende für die Erstellung des Dokumentes: "
Exit Sub
end if
zur Variante 2 musst du wissen:
- wenn man ein Userform-Objekt über eine Variable ansprechen will, dann geht das nur über die Controls-Funktion: Me.Controls("Name_des_Steuerelements")
- den Namen brauchst du ohne das ME und ohne Eigenschaften (dein ".Text" am Ende ist falsch)
wenn du also bei direkter Ansprache folgendes programmieren würdest:
Me.cob_Durchgang.Text = "Hallo Welt"
müsste das bei Indirekter Ansprache so aussehen:
Me.Controls("cob_Durchgang").Text = "Hallo Welt"
Gruß Daniel
Anzeige
AW: Leere Textboxen in einer MsgBox ausgeben
20.05.2019 19:10:49
Marcel
Hallo Daniel,
wieder mal was gelernt. Vielen Dank dafür
Habe das jetzt so umgesetzt:
   Dim txtboxnamen() As Variant
Dim xTxt As String
Dim expName As String
txtboxnamen = Array("cob_Durchgang", "TextBox33")
For zaehler = 0 To 1
If Me.Controls(txtboxnamen(zaehler)) = "" Then
Select Case txtboxnamen(zaehler)
Case "cob_Durchgang"
expName = "Durchgang"
Case "TextBox33"
expName = "Jahr des Durchganges"
End Select
xTxt = xTxt & expName & vbNewLine
End If
Next zaehler
If xTxt  "" Then
MsgBox "Prüfen Sie Ihre Eingaben." & vbNewLine & "Es fehlen folgende Eingaben für die  _
Erstellung des Dokumentes:" & _
vbLf & vbLf & xTxt & vbNewLine
Exit Sub
End If

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige