VBA-Programmierung in Microsoft Excel

Tutorial: Excel-Beispiele

Nur AJM in TextBox akzeptieren und Anzahl zählen

Gruppe

Dialog

Bereich

TextBox

Thema

Nur AJM in TextBox akzeptieren und Anzahl zählen

Problem

Wie kann ich erreichen, daß eine TextBox in einer UserForm nur die Zeichen A, J und M akzeptiert und die Anzahl dieser Zeichen als Label anzeigt?

Lösung

Geben Sie den nachfolgenden Code in das Klassenmodul der UserForm ein.




ClassModule: frmEingabe

Private Sub cmdContinue_Click()
   Unload Me
End Sub

Private Sub txtEingabe_Change()
   Dim arr(1 To 3) As Integer
   Dim iCounter As Integer
   Dim sTxt As String
   sTxt = txtEingabe.Text
   If sTxt = "" Then Exit Sub
   If Not Right(sTxt, 1) Like "A" And _
      Not Right(sTxt, 1) Like "J" And _
      Not Right(sTxt, 1) Like "M" Then
      sTxt = Left(sTxt, Len(sTxt) - 1)
      txtEingabe.Text = sTxt
   End If
   For iCounter = 1 To Len(sTxt)
      Select Case Mid(sTxt, iCounter, 1)
         Case "A": arr(1) = arr(1) + 1
         Case "J": arr(2) = arr(2) + 1
         Case "M": arr(3) = arr(3) + 1
      End Select
   Next iCounter
   For iCounter = 1 To 3
      Controls("Label" & iCounter).Caption = _
         "Anzahl Zeichen " & iCounter & ": " & arr(iCounter)
   Next iCounter
End Sub

StandardModule: basMain

Sub CallForm()
   frmEingabe.Show
End Sub

    


Beiträge aus dem Excel-Forum zu den Themen Dialog und TextBox