Ho fatto questo codice con la tua funzione:
Private Sub Form_Load()
Dim num1 As Double
Dim n As Integer
Dim ris As Double
num1 = 15.4445
n = 2
ris = DV(num1, n)
MsgBox ris
End Sub
Private Function DV(NumeroIniziale As Double, dopovirgola As Integer) As Double
Dim operazioni As String, i As Integer, tmp() As String
i = InStr(1, CStr(NumeroIniziale), ",")
If dopovirgola <= NumeroIniziale Then
If i > 0 Then
tmp = Split(CStr(NumeroIniziale), ",")
operazioni = tmp(0) & "." & Left(tmp(1), Len(tmp(1)) - dopovirgola)
DV = Val(operazioni)
Else
MsgBox "Questo non è un numero decimale!", vbCritical, "Error Function DV"
Exit Function
End If
Else
MsgBox "I numeri dopo la virgola sono minori dei numeri da togliere!", vbCritical, "Error Function DV"
Exit Function
End If
End Function
Ma mi dice sempre che il mio numero non è decimale
|