Hallo an alle,
ich hab wieder mal ein Problem das mir Kopfzerbrechen bereit.
Ich habe ein Formular erstellt, in welchem u.a. meine zwei problemfelder liegen.
Das eine Textfeld "Anzahl Punkte" kann händig von einem Prüfstand befüllt werden. Nach Eingabe der Werte wird automatisch im Textfeld "Prozente" der prozentuale Anteil der Punkte berechnet, so weit so gut. 
Wenn ich aber Versuche den eingegebenen Wert aus dem Feld "Anzahl Puntke" zu löschen, wird das Feld "Prozente" grau und lässt die alte Prozentzahl stehen. wenn ich dann aus dem Prozente Feld rausgehen will, kommt die Fehlermeldung "Laufzeitfehler 94".
Merkwürdigerweise, passiert nichts mit dem Feld wenn nichts drin steht, sondern nur wenn man im Feld "Anzahl Punkte" etwas eingegeben hat und dann wieder löscht. Das verstehe ich nicht
Ist-Zustand sollte es eigentlich sein, dass das Feld auch nach dem Löschen des Wertes in Feld "Anzahl Punkte" weiß und leer bleibt.
Kann mir da jemand helfen? Hatte schonmal im Forum nachgeschaut. Irgendwas mit ner NZ() Fkt. aber das verstehe ich nicht, bzw. kann es mit meinen beschränkten Programmierfähigkeiten nicht auf mein Problem umbauen.
Danke schon mal im Voraus für eure Hilfe
Mfg Robby
			
			
			
				Hallo,
für den Fehler 94 gibt es die Lösung 4711  ;D
Im Ernst, zu einer Fehlernummer gehört auch der Fehlertext wörtlich zitiert.
Und zege mal die Formel wie Du diese verwendest. Die gehört eigentlich auch gleich zur Frage.
			
			
			
				Hallo,
sorry. Hier die benötigten Infos.  :)
Fehlernummern: Laufzeitfehler 94: Unzulässige Verwendung von Nullen.
Formel ist folgende: 
Private Sub prozenterrechnen()
Dim dblproz As Double, lnganzp As Long, lngsick As Long
If Me![gem BL rund] > 0 Then
Select Case Me![Bauhöhe]
    Case 280 To 320
        lnganzp = 6
        If Me![Lagigkeit] = 22 Or Me![Lagigkeit] = 33 Then
        lngsick = 0
        Else
        lngsick = 2
        End If
    Case 380 To 420
        lnganzp = 8
        If Me![Lagigkeit] = 22 Or Me![Lagigkeit] = 33 Then
        lngsick = 0
        Else
        lngsick = 2
        End If
    Case 480 To 520
        lngsick = 2
        lnganzp = 12
    Case 530 To 570
        lngsick = 2
        lnganzp = 14
    Case 580 To 620
        lngsick = 2
        lnganzp = 14
    Case 680 To 720
        lngsick = 2
        lnganzp = 18
    Case 880 To 920
        lngsick = 2
        lnganzp = 22
End Select
dblproz = Me![E_Aufknöpfprobe] / ((((Me![Baulänge] / 100) * 3) - lngsick) * lnganzp)
Me![Prozente Punkte KV-Blech] = dblproz
End If
End Sub
Wenn ich bei dem Laufzeitfehler auf Debuggen gehe, zeig er mir das der Fehler in der Zeile
dblproz = Me![E_Aufknöpfprobe] / ((((Me![Baulänge] / 100) * 3) - lngsick) * lnganzp)
erzeugt wird.
			
			
			
				Hallo,
die Fehlermeldung heist nicht "Unzulässige Verwendung von Nullen" sondern "Unzulässige Verwendung von Null". Damit ist auch nicht die Zahl Null (0) gemeint, sondern ein leeres Feld. Ein leeres Feld hat keinen Wert (=Null = Nix).
Welches Feld kann den leer sein?
			
			
			
				Hallo,
also leer sein könnte das Feld E_Ausknöpfprobe aus der beim Debuggen angezeigten Zeile der Formel.
			
			
			
				Hallo,
dann schließe die 2 Anweisungen in eine Prüfung auf Null ein:
If Not IsNull(Me![E_Aufknöpfprobe]) Then
    dblproz = Me![E_Aufknöpfprobe] / ((((Me![Baulänge] / 100) * 3) - lngsick) * lnganzp)
    Me![Prozente Punkte KV-Blech] = dblproz
End If
			
			
			
				Hallo,
zunächst einmal ein riesengroßes dankeschön, der lauffehler ist weg. Jetzt hab ich nur noch ein klitzekleines Problem.  ;D
Wenn ich zum Beispiel bei E_Ausknöpfrobe 34 eingebe kommt als Prozente 17,21%.
Lösche ich jetzt die 34 bleiben aber die 17% stehen und das Feld wird nicht leer.
Was muss ich bei dem Feld "Prozente" eingeben, damit er mir die Prozentzahl rauslöscht, falls das Feld versehentlich befüllt wurde.
			
			
			
				Hallo,
wo und wie wird denn die Prozentrechnung aufgerufen?
			
			
			
				Hallo,
also die Formel Prozentrechnen, habe ich in einer Exceltabelle erstellt dann hab ich die Tabelle ins Access importiert und daraus nimmt sich dann das Feld die Formel. 
Also im Steuerelementinhalt steht "Prozente Punkt KV-Blech".
			
			
			
				Hallo,
wieso Excel?
Die Formel steht doch in einer VBA Sub in Access, da ist doch Excel nicht mehr im Spiel.
Meine Frage war ja auch, wie Du die Sub startest, ist das ein Button?
			
			
			
				Hallo,
sorry ich steck hier noch nicht so tief im Thema das ich immer verstehe was von mir gewollt wird.  ;D
Also der Sub wird gestartet wenn ich im Feld "E_Ausknöpfprobe" Enter drücke.
			
			
			
				Hallo Robby,
Ergänze Klaus' Code um einen Else-Zweig
If Not IsNull(Me![E_Aufknöpfprobe]) Then
    dblproz = Me![E_Aufknöpfprobe] / ((((Me![Baulänge] / 100) * 3) - lngsick) * lnganzp)
    Me![Prozente Punkte KV-Blech] = dblproz
Else
    Me![Prozente Punkte KV-Blech] = 0
End If
gruss ekkehard
			
			
			
				Hallo Ekkehard,
funktioniert super! Danke für die Hilfe
Gruß Robby