Laufzeitfehler 13
30.11.2012 12:08:56
Dennis
schreibe zur Zeit ein Programm mit VBA (Excel) im Rahmen einer Projektarbeit. Zur Zeit will ich das Programm "Idioten sicher",heißt ich will einen Code schreiben so dass alle Felder immer einen Wert größer 0 haben sollen. Es klappt auch bei bei fast allen Feldern außer bei einem, obwohl ich das wie bei den anderen Feldern gemacht habe.
Das Problem liegt nun darin die MessageBox nur kommt wenn ich eine Null reinschreibe und nicht wenn ich die Zeile leer lasse.Wenn die Zeile leer ist bekomme ich nur die Fehlermeldung Laufzeitfelhler 13 : Typen unverträglich
Meine Kenntnisse im programmieren sind ehr gering.
Die betroffen Zeilen sind fett.
Private Sub E_B_be_Click()
Dim E_U, E_Kapa, E_ET, E_ADS, E_stapler, E_ladeg, E_batterie, E_NG, E_SK, E_Kat, E_EG, E_h As Double
E_h = E_MM.E_T_h
'Einsatzgewicht
E_EG = E_MM.E_C_EG
'Energiekosten
E_U = E_MM.E_C_U
E_Kapa = E_MM.E_T_kapa
E_ET = E_MM.E_T_ET
E_ADS = E_MM.E_C_ADS
E_SK = E_MM.E_T_SK
'Feste Kosten
E_stapler = E_MM.E_T_stapler
E_ladeg = E_MM.E_T_ladeg
E_batterie = E_MM.E_T_batterie
'Instandhaltung
E_NG = E_MM.E_T_NG
If MultiPage1.Value = 0 Then
E_Kat = 0.1
ElseIf MultiPage1.Value = 1 Then
E_Kat = 0.13
ElseIf MultiPage1.Value = 2 Then
E_Kat = 0.18
End If
'Sicher
If E_MM.E_T_h = 0 Or E_MM.E_T_h = "" Then
sicher = MsgBox("Bitte 'Arbeitsstunden' eintragen.", vbOKOnly)
ElseIf E_MM.E_C_EG = 0 Or E_MM.E_C_EG = "" Then
sicher1 = MsgBox("Bitte 'Einsatzgewicht' auswählen.", vbOKOnly)
ElseIf E_MM.E_C_U = 0 Or E_MM.E_C_U = "" Then
sicher2 = MsgBox("Bitte 'Spannung' auswählen.", vbOKOnly)
ElseIf E_MM.E_T_kapa = 0 Or E_MM.E_T_kapa = "" Then
sicher3 = MsgBox("Bitte 'Batteriekapazität' eintragen.", vbOKOnly)
ElseIf E_MM.E_T_ET = 0 Or E_MM.E_T_ET = "" Then
sicher4 = MsgBox("Bitte 'Einsatztage' eintragen.", vbOKOnly)
ElseIf E_MM.E_C_ADS = 0 Or E_MM.E_C_ADS = "" Then
sicher5 = MsgBox("Bitte 'Anzahl der Schichten' auswählen.", vbOKOnly)
ElseIf E_MM.E_T_SK = 0 Or E_MM.E_T_SK = "" Then
sicher6 = MsgBox("Bitte 'Stromkosten' eintragen.", vbOKOnly)
ElseIf E_MM.E_T_stapler = 0 Or E_MM.E_T_stapler = "" Then
sicher7 = MsgBox("Bitte 'Investionskosten beim Stapler' eintragen.", vbOKOnly)
ElseIf E_MM.E_T_ladeg = 0 Or E_MM.E_T_ladeg = "" Then
sicher8 = MsgBox("Bitte 'Investionskosten beim Ladegerät' eintragen.", vbOKOnly)
ElseIf E_MM.E_T_batterie = 0 Or E_MM.E_T_batterie = "" Then
sicher9 = MsgBox("Bitte 'Investionskosten bei der Staplerbatterie' eintragen.", vbOKOnly)
ElseIf E_MM.E_T_NG = 0 Or E_MM.E_T_NG = "" Then
sicher10 = MsgBox("Bitte 'Nutzungsgrad' eintragen.", vbOKOnly)
End If
If sicher = 0 And sicher1 = 0 And sicher2 = 0 And sicher3 = 0 And sicher4 = 0 And sicher5 = 0 And sicher6 = 0 And sicher7 = 0 And sicher8 = 0 And sicher9 = 0 And sicher10 = 0 Then
'Ergebnis
AE_MM.AE_T_PA = f_E_be(E_U, E_Kapa, E_ET, E_ADS, E_stapler, E_ladeg, E_batterie, E_NG, E_SK, E_Kat, E_EG, E_h)
AE_MM.AE_T_PH = f_E_be2(AE_MM.AE_T_PA, E_NG, E_ET, E_h)
Unload E_MM
AE_MM.Show
End If
Hoffe mir kann wer helfen.
Gruß