Thema Datum  Von Nutzer Rating
Antwort
Rot Bedingung für Textfelder die nicht angezeigt werden sollen
07.04.2020 14:50:40 Christian
Solved
07.04.2020 21:02:48 amicro2000
Solved
08.04.2020 21:00:37 Gast74379
Solved

Ansicht des Beitrags:
Von:
Christian
Datum:
07.04.2020 14:50:40
Views:
960
Rating: Antwort:
 Nein
Thema:
Bedingung für Textfelder die nicht angezeigt werden sollen

Ich habe mir eine Stundentabelle erstellt und diese so gestaltet, dass alle Felder in der UserForm ausgefüllt sein müssen, bevor die Daten in eine Tabelle übernommen werden. Jetzt stoße ich allerdings an meine Grenzen und für mich wird es zu kompliziert. Daher benötige ich Hilfe.

Folgendes soll noch eingearbeitet werden: Wenn in der ComboBox1, die Einträge "Urlaub, Feiertag oder Krank" ausgewählt werden, dann soll TextFeld2 und TextFeld3 ausgeblendet werden. Dann soll naturlich auch nicht der Hinweis erscheinen "Es wurden nicht alle Textfelder ausgefüllt." und die Daten sollen ohne Befüllen in die Tabelle übernommen werden. TextFeld1 und die ComboBox1 müssen aber trotzdem beide befüllt werden, sonst soll wieder der Hinweis kommen "Es wurden nicht alle Textfelder ausgefüllt."

Ich hoffe, dass ich es einigermaßen verständlich beschreiben konnte und hoffe auf Eure Hilfe.

Private Sub ComboBox1_Change()
End Sub

Private Sub CommandButton1_Click()
Dim objtxt As Object
For Each objtxt In UserForm1.Controls
  If TypeName(objtxt) = "TextBox" Or (TypeName(objtxt) = "ComboBox") Then
    If objtxt.Value = "" Then
      MsgBox " Es wurden nicht alle Textfelder ausgefüllt.!", 48
      objtxt.SetFocus
      Exit Sub
    End If
  End If
Next

Dim erste_freie_Zeile As Integer
ActiveSheet.Unprotect Password:=""
erste_freie_Zeile = Sheets("Stundennachweis").Range("A65536").End(xlUp).Offset(1, 0).Row
Sheets("Stundennachweis").Cells(erste_freie_Zeile, 1) = CDate(TextBox1.Text)
Sheets("Stundennachweis").Cells(erste_freie_Zeile, 2) = Format(TextBox2.Text, "hh:mm")
Sheets("Stundennachweis").Cells(erste_freie_Zeile, 3) = Format(TextBox3.Text, "hh:mm")
Sheets("Stundennachweis").Cells(erste_freie_Zeile, 4) = ComboBox1.Text
Unload Me
ActiveSheet.Protect Password:=""
End Sub

Private Sub CommandButton2_Click()
Unload Me
End Sub

Private Sub TextBox1_Change()
End Sub

Private Sub TextBox2_Change()
End Sub

Private Sub TextBox3_Change()
End Sub

Private Sub UserForm_Initialize()
Dim Wiederholungen As Integer
For Wiederholungen = 2 To Sheets("Hilfstabelle").Range("A65536").End(xlUp).Row
ComboBox1.AddItem Sheets("Hilfstabelle").Cells(Wiederholungen, 1)
Next
End Sub


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot Bedingung für Textfelder die nicht angezeigt werden sollen
07.04.2020 14:50:40 Christian
Solved
07.04.2020 21:02:48 amicro2000
Solved
08.04.2020 21:00:37 Gast74379
Solved