Sub sampleButton_Click()
On Error GoTo ErrorHandler
With Selection.ShapeRange
If .Type = msoGroup Then
Call setStyleTest(.GroupItems(.GroupItems.Count))
Else
For Each shp In ActiveWindow.Selection.ShapeRange
Call setStyleTest(shp)
Next shp
End If
End With
Exit Sub
ErrorHandler:
MsgBox "Error", vbExclamation
End Sub
我使用ActiveX CommandButton并且对ShapeRange的测试选择有问题。我应该更改/修复什么? 提前致谢
答案 0 :(得分:0)
问题解释
CommandButton没有属性ShapeRange
因此,错误将始终出现
另一方面,如果您更改按钮的对象 - 表单集合下的对象 - 您将不会遇到该问题,因为该属性存在于该对象中
请注意,即使它们在外观上相似,它们也是完全不同的对象,因此,一个属性可能不存在于另一个属性中,或者表现得像另一个属性。 有关您可以做什么的更多信息 - 以及如何操作 - 使用此按钮可以找到here
<强> 解决方案/工作 强>
我可以看到你正在调用另一个子来“个性化”创建的按钮,因为它是未知的,你需要根据对象改变它以提供所需的格式。 您还需要反转代码中的顺序以便正确处理
...
If .Type = msoGroup Then
With Selection.ShapeRange
...
进一步的想法
我无法想象你需要使用活动X而不是表单按钮集合的场景,所以我建议将所有按钮更改为。
答案 1 :(得分:0)