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
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
Blau Textboxen gleichzeitig ansprechen
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:
23.02.2018 01:05:10
Views:
559
Rating: Antwort:
  Ja
Thema:
Textboxen gleichzeitig ansprechen

Hallo Hermdaddy,

sicher kann man hier auch ein zweites Klassenmodul verwenden. Nur wozu? Aber wenn du das schon machst, dann eher so wie von Gast68385 vorgeschlagen. Da du jedoch hinter den Events noch eine Nummer hinzugefügt hast, werden diese nicht mehr als solche erkannt und daher nicht ausgeführt.

Viel einfacher wäre es, wenn du im Userform lediglich <= 5038 durch <= 5107 ersetzt und den Rest unverändert lässt.

Den Code im Klassenmodul mytextbox baust du nun so auf: 

Public WithEvents tbx As MSForms.TextBox
 
Private Sub tbx_Change()
   
  On Error GoTo Ende
   
  SABW = Sheets("Tabelle1").Cells(2, 12)
  
  Select Case Val(Right(tbx.Name, 4))
    Case 5001 To 5038
      If CDbl(tbx) > 4 Or CDbl(tbx) < -4 Then
        tbx.BackColor = vbRed
      Else
        tbx.BackColor = vbGreen
      End If
    Case 5089 To 5107
      If CDbl(tbx) > (SABW * 2) Or CDbl(tbx) < -(SABW * 2) Then
        tbx.BackColor = vbRed
      Else
        tbx.BackColor = vbGreen
      End If
  End Select
Exit Sub

Ende:   tbx.BackColor = vbWhite

End Sub

PS: Wenn du es ganz genau machen willst, kannst du alternativ im Userformcode natürlich auch die Zeile

If Val(Right(ctrl.Name, 4)) >= 5001 And Val(Right(ctrl.Name, 4)) <= 5038 Then 

durch die zwei Zeilen

If Val(Right(ctrl.Name, 4)) >= 5001 And Val(Right(ctrl.Name, 4)) <= 5038 _
Or Val(Right(ctrl.Name, 4)) >= 5089 And Val(Right(ctrl.Name, 4)) <= 5107 Then

ersetzen.

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
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
Blau Textboxen gleichzeitig ansprechen
23.02.2018 01:05:10 xlKing
NotSolved
23.02.2018 11:59:56 Hermdaddy
Solved
23.02.2018 16:17:41 xlKing
NotSolved