我正在尝试在 VBA 上取得一些进展
我知道这是非常基本的,但在工作表事件中,例如更改
Private Sub Worksheet_Change(ByVal Target as Range)
Target.Font.ColorIndex = 5
End Sub
我无法从帮助中的这个解释中得到意义
指定以这样一种方式传递参数,即被调用的过程或属性不能更改调用代码中参数基础的变量的值。
女巫真的把我搞糊涂了……
我还在各种来源中进行了搜索,发现了这种不同的解释,使我更深地陷入了黑暗……它是这样的:
如果您不希望被调用过程修改作为参数传递的任何变量,则可以修改被调用过程的参数列表,以便通过值而不是通过引用将参数传递给它。为此,请在参数前面加上 ByVal 关键字。这种技术使被调用的例程使用传递的变量数据的副本——而不是数据本身。
他的意思是“参数是通过值而不是通过引用传递给它的”?你能用简单的方式解释一下 ByVal 的作用吗?我在编写代码时经常使用它,并且我想知道我正在编写的每一段代码。