Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

IsNumeric+Empty in if, then Anweisung?

Forumthread: IsNumeric+Empty in if, then Anweisung?

IsNumeric+Empty in if, then Anweisung?
21.05.2008 10:40:35
Jessica
Hallo,
ich habe 3 Textfelder die Bestandteile einer Formel sind. Diese Werten dürfen nur numerischer Natur sein. Beim Auslösen des CMD-Buttons soll geprüft werden, ob
a) alle Eingaben numerisch sind
b) überhaupt Werte vorhanden sind
hier mein Ansatz, aber gibt es dafür eine elegantere Lösung?

Private Sub cmd_AD_Click()
If IsNumeric(tb_ea1__tb_AD) _
And IsNumeric(tb_A1__tb_AD) _
And IsNumeric(tb_R1__tb_AD) _
And tb_ea1__tb_AD.Value = Empty _
Or tb_A1__tb_AD.Value = Empty _
Or tb_R1__tb_AD.Value = Empty Then
MsgBox ("Bitte geben Sie Werte ein usw.")
Else
If IsNumeric(tb_ea1__tb_AD) _
And IsNumeric(tb_A1__tb_AD) _
And IsNumeric(tb_R1__tb_AD) Then
A1_ADurch = tb_A1__tb_AD.Value
R1_ADurch = tb_R1__tb_AD.Value
amortisationsdauer = (A1_ADurch - R1_ADurch) / ea1_ADurch
'Text_Amortisationsdauer.Caption = amortisationsdauer
Text_Amortisationsdauer.Caption = amortisationsdauer
cmd_AD.Visible = False
FR_AmortisationsdauerOK.Visible = True
Else
MsgBox ("Bitte geben Sie Werte ein usw.")
End If
End If
End Sub


Ein weiteres Problem:
Wie löst man am Besten den Umgang mit nicht auflösbaren Rechnungen, d.h. Division durch 0.
Bsp. ea1_ADurch = 0, ist zwar ein Wert, kann aber nicht Ausdruck durch 0 teilen.
?
Für Rückmeldungen wäre ich dankbar.
LG

Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: IsNumeric+Empty in if, then Anweisung?
21.05.2008 11:02:00
Mac4
Hallo Jessica,
Du könntest bereits bei der Eingabe in die Textboxen Fehler unterbinden - folgendes Ereignis für jede Textbox hinterlegen:

Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
'Prüft jedes eingegebe Zeichen
Select Case KeyAscii
Case 48 To 57
Case Else
KeyAscii = 0
MsgBox "Bitte nur Zahlen eingeben!", vbCritical
End Select
End Sub


Matc

Anzeige
AW: andere Möglichkeit
21.05.2008 11:44:00
Jessica
Hallo ihr beiden,
habe die version von chris in meine userform eingearbeitet, genau so hab ich mir's vorgestellt. weitaus eleganter gelöst als mein versuch. danke euch beiden!
LG

Anzeige
AW: andere Möglichkeit
21.05.2008 20:37:00
Gerd
Hallo Jessica!
If (A1_ADurch - R1_ADurch) * ea1_ADurch = 0 then
Msgbox "keine gültigen Berechnungswerte!"
Exit sub
End if
Gruß Gerd
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige