VBA 删除屏幕外的用户窗体控件对象

VBA Delete userform control object that is off-screen

我在用户窗体中添加了一个选项按钮,但它在屏幕外消失了。 我知道它还在那里,我可以通过代码访问它。

这不是世界末日,但为了完整起见,我宁愿删除它。我只是无法在 UI 中访问它。显然,如果我可以在 IDE 用户表单 window 中单击它,我可以轻松删除它。

我的想法是我可以更改它的位置:

Dim x As Variant

For Each x In Me.Controls
    Debug.Print x.Name
    If x.Name = "OptionButton1" Then
        Debug.Print x.Left & ", " & x.Top
        x.Left = 1
        x.Top = 1
    End If
Next x

这有效,但仅在运行时有效。程序一结束,它就会回到原来的位置。 FWIW,它的当前位置是 240,-528。

有谁知道另一种访问对象的方法吗?我也试过

Me.Controls.Remove "OptionButton1"

这也只在运行时有效。

有什么想法吗?

在 "Properties" window (F4) 顶部下拉列表 select OptionButton1 然后更改 LeftTop 属性。