使用 'RefEdit' 控件检查特定范围

Using 'RefEdit' control to check specific range

我有一个用户表单,要求用户使用 RefEdit 控件 select 一系列单元格。我正在尝试将相应的范围存储在一个范围变量中,这样我就可以 运行 对该范围进行多次检查(没有空单元格、有效输入……)。现在我尝试使用(因为我在互联网上看到很多人这样做):

Dim Data_Range as Range
Set Data_Range = Range(RefEdit_DataRange.Value)

但它仅以错误结束:

'Error 1004: Method "Range" for object "_Global" failed. (approximate translation)

我在 MsgBox 中打印了 RefEdit_DataRange.Value,它是一个格式为 Sheet!Cell1:Cell2 的字符串,所以它看起来像我期望的那样,但它不起作用。

有人 运行 遇到过同样的问题吗?

您需要在范围地址之前传递您的 sheet 引用,根据您所拥有的,split 似乎是最简单的方法:

Dim Data_Range As Range, _
    A() As String

A = Split(RefEdit_DataRange.Value, "!")
Set Data_Range = Sheets(replace(A(0),Chr(39),"")).Range(A(1))