Thema Datum  Von Nutzer Rating
Antwort
21.02.2018 14:38:58 Hermdaddy
NotSolved
21.02.2018 14:52:50 Gast30478
NotSolved
21.02.2018 14:57:15 Hermdaddy
NotSolved
21.02.2018 18:48:21 Hermdaddy
NotSolved
Rot Textboxen gleichzeitig ansprechen
21.02.2018 19:57:43 xlKing
NotSolved
22.02.2018 11:57:50 Hermdaddy
NotSolved
22.02.2018 13:29:31 Gast51382
NotSolved
22.02.2018 13:38:21 Hermdaddy
NotSolved
22.02.2018 14:20:28 Gast68385
NotSolved
23.02.2018 01:05:10 xlKing
NotSolved
23.02.2018 11:59:56 Hermdaddy
Solved
23.02.2018 16:17:41 xlKing
NotSolved

Ansicht des Beitrags:
Von:
xlKing
Datum:
21.02.2018 19:57:43
Views:
574
Rating: Antwort:
  Ja
Thema:
Textboxen gleichzeitig ansprechen

Hi Hermdaddy,

Gast 30478 hat völlig Recht. Eine Klasse wäre hier das Beste. Ich baue so was immer wie folgt auf: Erstelle ein neues Klassenmodul und gib diesem einen aussagekräftigen Namen: z.B. myTextbox

Code im Userform:

Dim tbxcoll As New Collection

Private Sub UserForm_Initialize()
   For Each ctrl In Controls
      If TypeName(ctrl) = "TextBox" Then
        If Val(Right(ctrl.Name, 4)) >= 5001 And Val(Right(ctrl.Name, 4)) <= 5038 Then
          tbxcoll.Add New mytextbox
          Set tbxcoll(tbxcoll.Count).tbx = ctrl
        End If
      End If
   Next ctrl
End Sub

Die Deklaration Dim tbxcoll muss ganz oben im Modulkopf stehen, also vor der ersten Prozedur. Wenn du sie aber lieber innerhalb von Userform_Initialize zeigen willst, musst du statt Dim das Schlüsselwort Static verwenden.

Code im Klassenmodul mytextbox:

Public WithEvents tbx As MSForms.TextBox

Private Sub tbx_Change()
  
    If tbx = "" Or tbx = "-" Then
      tbx.BackColor = vbWhite
    ElseIf tbx > 4 Or tbx < -4 Then
      tbx.BackColor = vbRed
    Else
      tbx.BackColor = vbGreen
    End If
 
End Sub

Gruß Mr. K.


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
21.02.2018 14:38:58 Hermdaddy
NotSolved
21.02.2018 14:52:50 Gast30478
NotSolved
21.02.2018 14:57:15 Hermdaddy
NotSolved
21.02.2018 18:48:21 Hermdaddy
NotSolved
Rot Textboxen gleichzeitig ansprechen
21.02.2018 19:57:43 xlKing
NotSolved
22.02.2018 11:57:50 Hermdaddy
NotSolved
22.02.2018 13:29:31 Gast51382
NotSolved
22.02.2018 13:38:21 Hermdaddy
NotSolved
22.02.2018 14:20:28 Gast68385
NotSolved
23.02.2018 01:05:10 xlKing
NotSolved
23.02.2018 11:59:56 Hermdaddy
Solved
23.02.2018 16:17:41 xlKing
NotSolved