TextBox ausblenden, Focus auf andere TextBox
19.08.2003 10:37:12
Heiner
abhänging vom Inhalt der Zelle D85 (B oder T) werden bestimmte TextBoxes ausgeblendet (das klappt).
Wenn also der Inhalt von D85 = T ist, werden bei Aufruf der UserForm die TextBoxes Betrag1-15 ausgeblendet und der Focus auf Betrag16 gesetzt.
Und hier beginnt das Problem, denn sobald die Userform aufgerufen wird, erscheint die vorher definierte Fehlermeldung "ZahlErlaubt" (siehe Code unten).
Der Inhalt von der TextBox Betrag16 ist vorbelegt mit 0,65.
Private Sub UserForm_Initialize()
Sheets("DISPO").Select
Dim ctr As Control
For Each ctr In Me.Controls
If Worksheets(1).Range("D85") = "T" And ctr.Tag = "A" Then
ctr.Visible = Not ctr.Visible
End If
Next
Dim ctro As Control
For Each ctro In Me.Controls
If Worksheets(1).Range("D85") = "B" And ctro.Tag = "B" Then
ctro.Visible = Not ctro.Visible
End If
Next
If Worksheets(1).Range("D85") = "B" Then
With ANGABEN_ZULAGEN.Betrag1
.Text = Worksheets("DISPO").Range("V49").Text
.SetFocus
Application.SendKeys "^A"
.SelStart = 0
.SelLength = Len(.Value)
End With
ElseIf Worksheets(1).Range("D85") = "T" Then
With ANGABEN_ZULAGEN.Betrag16
.Text = Worksheets("DISPO").Range("V67").Text
.SetFocus
Application.SendKeys "^B"
.SelStart = 0
.SelLength = Len(.Value)
End With
End If
Private Sub Betrag1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If KeyAscii < 48 Or KeyAscii > 57 Then Call ZahlErlaubt: KeyAscii = 0
End Sub
Private Sub Betrag1_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
With Betrag1
If InStr(.Value, ",") = 0 Then .Value = .Value / 100
End With
End Sub
Private Sub Betrag16_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If KeyAscii < 48 Or KeyAscii > 57 Then Call ZahlErlaubt: KeyAscii = 0
End Sub
Private Sub Betrag16_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
With Betrag16
If InStr(.Value, ",") = 0 Then .Value = .Value / 100
End With
End Sub
Wo liegt der Fehler?
Wer kann mir helfen und den Code eventuell umschreiben?
Vielen Dank vorab!!
Gruss Heiner