Set Worksheet in excel VBA return 编译错误

Set Worksheet in excel VBA return error of compilation

我在 Excel 中有两个选项卡,一个是执行特定操作的按钮,另一个是两个选项按钮 (OB)。

第一个 OB 命名为 obPD。

第二个OB命名为obAD。

当我点击按钮时,会调用以下例程:

Sub PDAN()
Dim wb1 As Workbook: Set wb1 = MyWB
Dim wsE As Worksheet: Set wsE = wb1.Worksheets("Sheet1")

If wsE.obPD.Value = True Then
    'do something
ElseIf wsE.obAD.Value = True Then 
    'do something
Else
    'do something
End If

问题是显示以下错误:

VBA表示部分

有问题
wsE.obPD.Value

如果我将 wsE 更改为 Worksheets("Sheet1"),则错误消失。

有人能帮忙吗? 提前致谢!

你需要使用

Dim wsE As Object

而不是

Dim wsE As Worksheet

“现成的”WorkSheet 对象没有成员 obPDobAD(这就是触发 compile-time 错误的原因),因此您不能使用 WorkSheet 作为变量类型。

最好使用 BigBen 建议的 sheet 代号。