Thema
|
Datum
|
Von Nutzer
|
Rating
|
Antwort
|
|
09.12.2014 15:07:41 |
Gert |
|
|
Taschenrechner , Bei stringeingabe msgbox |
10.12.2014 11:58:46 |
Gast61696 |
|
|
|
10.12.2014 21:09:15 |
Gast15900 |
|
|
Von:
Gast61696 |
Datum:
10.12.2014 11:58:46 |
Views:
654 |
Rating:
|
Antwort:
|
Thema:
Taschenrechner , Bei stringeingabe msgbox |
Hi Gert,
ich, als blutrünstiger VBA Anwender würde:
dich erst einmal nicht mit Control-Collection und Klassen überfordern, ergo:
Idee zum eingewöhnen
- fange den möglichen Fehler gleich bei der jeweiligen Textboxeingabe (Private Sub TextBox1_Exit)
- werte beim (Private Sub CommandButton1_Click) aus ob berechnet werden soll
Einfaches Beispiel:
'******************************************************************************
' Modul: UserForm1 / erstellt : 10.12.2014
'------------------------------------------------------------------------------
' Zweck / Inhalt :
' Userform1 mit:
' 2 x Textbox - Input
' 2 x Label - Output
' 1 x Commandbutton
'******************************************************************************
Option Explicit
Dim chkit, ncol As Variant 'für die Prüfung(en)
Private Sub CommandButton1_Click()
If Me.TextBox1.BackColor = ncol And Me.TextBox2.BackColor = ncol Then _
Me.Label1.Caption = "Ergebnis = " & _
Format(Berechne(Me.TextBox1.Value, Me.TextBox2.Value), "#")
End Sub
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Me.Label1.Caption = "Ergebnis"
On Error Resume Next
chkit = CDbl(Me.TextBox1.Value)
If Err.Number = 13 Then
'MsgBox "keine Zahl in Textbox"
Me.TextBox1.BackColor = 255
Else
Me.TextBox1.BackColor = ncol
End If
On Error GoTo 0
End Sub
Private Sub TextBox2_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Me.Label1.Caption = "Ergebnis"
On Error Resume Next
chkit = CDbl(Me.TextBox2.Value)
If Err.Number = 13 Then
'MsgBox "keine Zahl in Textbox"
Me.TextBox2.BackColor = 255
Else
Me.TextBox2.BackColor = ncol
End If
On Error GoTo 0
End Sub
Private Sub UserForm_Initialize()
ncol = Me.TextBox1.BackColor 'eingestellte Farbe
Me.TextBox1.SetFocus
End Sub
Function Berechne(sTextBox1 As String, sTextBox2 As String) As Double
'
MsgBox "ich berechne"
'
End Function
|
- 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
Bitte geben Sie ein aussagekräftiges Thema an.
Bitte geben Sie eine gültige Email Adresse ein!
- 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
|
|
09.12.2014 15:07:41 |
Gert |
|
|
Taschenrechner , Bei stringeingabe msgbox |
10.12.2014 11:58:46 |
Gast61696 |
|
|
|
10.12.2014 21:09:15 |
Gast15900 |
|
|