Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1692to1696
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
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ß

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

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

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige