Não há como sobrescrever qualquer célula de dentro de uma UDF, ela só pode retornar um valor.
Você pode usar a função Worksheet_Change para contornar isso ...
Na planilha:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Range("A1"), Target) Is Nothing Then
'do nothing - not worried about anything not in A1
Else
Range("A1").Value = Range("A1").Value
End If
End Sub
Qualquer fórmula que você digitar em A1, na planilha em que você colocou esse código, será convertida no valor e a fórmula removida.