Hallo an alle,
ich habe ein kleines Problem, bei welchem ich nicht weiterkomme und eure Hilfe benötige.
Ich habe ein Formular erstellt in das verschiedene Messwerte eingegeben werden müssen. Ziel soll es sein, dass im Feld Min das Minimum aus den Feldern 1MM und 1ML übernommen wird.
Dafür habe ich folgenden Code geschrieben.
Private Sub Ctl1MM_AfterUpdate()
If [1ML] > [1MM] Then
[Min] = [1MM]
ElseIf [1ML] < [1MM] Then
[Min] = [1ML]
End If
End Sub
wenn ich jetzt Werte einsetze für [1ML] zum Beispiel 1,2 und für [1MM] 1,3 und eine Haltemarke einsetze, dann geht er den Code schön durch, erkennt dass die If-Bedingung nicht stimmt und springt in die ElseIf-Bedingung. Dann setzt er aber anstatt 1,3 als Wert für [Min] 1 ein. Das verstehe ich nicht. Denke nicht das der Fehler was mit dem runden zu tun hat, denn dann würde er ja für [Min] wenigstens erstmal 1,3 erkennen und dann auf 1 abrunden.
Danke für eure Hilfe
Mfg Robby
Hallo,
vermutlich verwendest Du den Datentyp INTEGER (oder LONG) in der Tabelle, auf der das Form basiert... Setze das mal in DOUBLE um.
Wenn es ungebundene Felder sind, könnte eine Format-Einstellung dazwischenfunken.
Was soll passieren, wenn beide eingegebenen Werte gleich sind?
Sind 1ML und 1MM und Min (gebundene) Formular-Textfelder? Dann schreibe Me![1MM] , bzw. Me![1MM] und Me![Min]