我想创建一个 VBA 函数,myFunction(),
将内容写入单元格,计算完成后,它会清除它写入的所有数据。(我想从带有 的单元格中调用它=myFunction()
)为了清除内容,我将这一行放在最后,以便在完成之前清理:
ActiveSheet.Range("$A$1:$B$9").ClearContents
问题是它没有清除任何东西。但是,我注意到如果我把上面那一行放在一个子程序中,然后将该子程序分配给一个按钮,当我单击按钮时,内容将被清除。
当我从程序“Microsoft Visual Basic”(带有播放按钮)的窗口运行代码时,代码运行良好(内容被清除)但是当我从单元格调用函数时,清理部分不起作用了。这是代码:
Function myFunction()
ActiveSheet.Range("$A$1:$B$9").Clear
End Function
当我单击一个单元格并键入=myFunction()
时,$A$1:$B$9 范围内的内容不会被清除。但是,如果我创建一个子程序(而不是一个函数),并用一个按钮调用它,内容就会被清除。
为什么在 myFunction() 调用时它不起作用?我该如何解决这个问题?