I want to create a VBA function, myFunction(), that writes content in cells and when the calculation is done, it would clear all the data it wrote. (I want to call
Instead of UDF you can use events. Please put the below code on any sheet code section.
limitations of UDF
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
Application.EnableEvents = False
If Not Intersect(Target, Range("$A$1:$B$9")) Is Nothing Then
' your code here
Range("$A$1:$B$9").Clear
End If
Application.EnableEvents = True
End Sub
The above code is like a workaround. It will be triggered when values in Range("A1:B9") are changed from excel interface.
A user-defined function called by a formula in a worksheet cell cannot change the environment of Microsoft Excel. This means that such a function cannot do any of the following:
for more details read the link provided earlier.
