如何删除UserForm中的标签?
问题描述:
我有这个功能的用户窗体:如何删除UserForm中的标签?
Sub CallUserForm_Appro()
UserForm1.MyVariable = "Appro"
UserForm1.Show
End Sub
Sub CallUserForm_User()
UserForm1.MyVariable = "User"
UserForm1.Show
End Sub
我的目标是消除“Label1的”如果按钮用户点击呼叫CallUserForm_Appro()
:
Public MyVariable As String
Private Sub UserForm_Initialize()
[...my code...]
End Sub
要从按钮我做打电话给我的用户窗体
所以,我试图在UserForm_Initialize()
做:
Public MyVariable As String
Private Sub UserForm_Initialize()
[...my code...]
If MyVariable = "Appro" Then
UserForm1.Controls.Remove "Label1"
End If
End Sub
我没有错误,但我的Label1始终可见。
答
这是你如何将标签的可见性设置为false:
UserForm1.label1.Visible = false
那么它不应该是可见的了。
答
`Initialize事件发生在变量被设置之前(因为如果没有首先加载,就无法访问表单的任何属性)。
只要在运行时添加控件,就应该使用Activate
事件。如果这是一个设计时间控制,你不能删除它,只能隐藏它。或者,如果变量是而不是设置为“Appro”,您可能只能将其添加到表单中。
+0
Thx为您解释 – Ferfa
Thx,它的工作原理。所以,我在CallUserForm_Appro()函数中添加了你的代码 – Ferfa
@Ferfa,谢谢,祝你有个愉快的星期五! :) – Vityata