Symphysodon
Gebruiker
- Lid geworden
- 14 dec 2012
- Berichten
- 468
Beste forummers,
Het lukt maar niet om vanuit een code,het resultaat van een vba afrondfunctie terug te geven aan de worksheet.
Ik heb van alles geprobeerd maar de getallen in de sheet blijven onveranderd. Vanuit de sheet zelf werkt de functie wel goed.
In de bijlage een voorbeeldbestand.
Mvg
Marco
Het lukt maar niet om vanuit een code,het resultaat van een vba afrondfunctie terug te geven aan de worksheet.
Ik heb van alles geprobeerd maar de getallen in de sheet blijven onveranderd. Vanuit de sheet zelf werkt de functie wel goed.
Code:
Function Afronden_even(Getal) As Variant
Select Case Getal
Case 0 To 0.9999999
afgerond = Application.Fixed(Round(Getal, 2), 2)
Case Is > 1
afgerond = Application.Fixed(Round(Getal, 1), 1, -1)
Case Else
afgerond = afgerond
End Select
Afronden_even = afgerond
End Function
Code:
Sub xrf_afronden_data_validatie()
Application.ScreenUpdating = False
'Set xRg = ActiveSheet.UsedRange
Set xRg = Application.InputBox("Select a range:", "tools for Excel", xTxt, , , , , 8)
If xRg Is Nothing Then Exit Sub
Application.ScreenUpdating = False
'On Error Resume Next
For Each cell In xRg
cell.Activate
Afronden_even (Getal)
Next
Application.ScreenUpdating = True
End Sub
In de bijlage een voorbeeldbestand.
Mvg
Marco