Hallo Michael Boeckenhauer,
Michael Boeckenhauer schrieb:
ich suche eine Funktion für VBA, die der Excel Funktion
Post by Michael BoeckenhauerKürzen gleicht und eine festgelegte Anzahl Dezimalstellen
abschneidet.
du könntest auch eine benutzerdefinierte Funktion kreieren:
Function Kürzen(dblValue As Double, intDec As Integer) As Double
' Wenn Zahl eine Ganzzahl ist, oder
' weniger Nachkommastellen als gefordert hat
' beende Funktion
If Int(dblValue) = dblValue Or _
VBA.Len(VBA.Right(CStr(dblValue), VBA.Len(CStr(dblValue)) - _
InStr(CStr(dblValue), ","))) < intDec Then
Kürzen = dblValue
Exit Function
Else
Kürzen = CDbl(VBA.Left(CStr(dblValue), _
InStr(CStr(dblValue), ",") + intDec))
End If
End Function
Sub TestKürzen()
Debug.Print Kürzen(Range("A1").Value, 3)
Debug.Print Kürzen(12345.6789, 3)
End Sub
--
Mit freundlichen Grüssen
Melanie Breden
- Microsoft MVP für Excel -
http://excel.codebooks.de (Das Excel-VBA Codebook)
#Excel-Auftragsprogrammierung#