Excel VBA是否可以传递ActiveCell或ActiveCell.Address作为参数



我想把一个特定的ActiveCell,甚至ActiveCell.Address传给另一个Sub((。

具有我需要的ActiveCell的函数是:

Private Sub CommandButton1_Click()
If Trim(TextBox1.Value) = "" Then
MsgBox "No Value detected"
Else
Debug.Print "ActiveCell on ButtonClick: " & ActiveCell.Address         ' ACTIVECELL IS CORRECT HERE
MsgBox TextBox1.Value     ' good
ActiveCell.Value = TextBox1.Value
ReadDataFromAnotherWorkBookSO (ActiveCell.Address)              ' here is the Function that needs the ActiveCell.Address
End If
End Sub

这是需要ActiveCell的函数的函数头((。地址:

Sub ReadDataFromAnotherWorkBookSO(ActCell As Range)       ' I expect the Address in here 

稍后在该函数(ReadDataFromAnotherWorkBookSO(中,我想使用我的ActCell并将其设置为Active,这样我就可以更改工作表中的一些.Foffset((值,这就是我需要地址的原因,因为函数(ReadDataFromAnotherWorkBookSO(内的ActiveCell不再相同。

我需要知道如何正确使用传递的ActiveCell.Address,因为目前它还没有通过。

谢谢Faded~

.Address是一种字符串数据类型。函数参数需要一个范围。

所以只需要传递ActiveCell而不是ActiveCell.Address

然后,第二个函数可以获取传递的范围对象的任何参数,包括其地址。

最新更新