如何将单元格值传递给Range以用作其地址?

时间:2019-02-06 19:04:25

标签: excel vba

我有一个脚本,要求用户输入一系列单元格。我用一个输入框来做

Set Range1 = Application.Selection
Set Range1 = Application.InputBox("Source Ranges:", xTitleId, Range1.Address, Type:=8)
Range("C3").Value = Range1.Address(External:=True)

我希望用户能够再次运行脚本,但是只需重用以前的范围即可。我正在将地址保存到单元格中,现在正尝试将该信息从单元格中传回范围。...这给了我一个类型不匹配的信息。下面是我(可能太简单)试图将信息传递回去的方式。

Set Range1.Address = Cells(3, 3).Value

但是,如果我复制以前的范围并将其粘贴到对话框中,则可以正常工作。我相信我只是没有正确传递数据。有什么建议吗?

1 个答案:

答案 0 :(得分:0)

Address属性是只读的。它不能用于更改范围。相反,只需使用Range函数:

Set Range1 = Range(Cells(3,3).Value)

应该工作。