dynamic添加标签到用户窗体=空白用户窗体

我试图dynamic地添加button到用户窗体,但用户窗体只是空白。 我已经简化了代码的本质,尽可能地进行错误检查(不是它帮助了我)

Sub addLabel() UserForm2.Show Dim theLabel As Label Dim labelCounter As Integer For labelCounter = 1 To 3 Set Label = UserForm2.Controls.Add("Forms.Label.1", "Test" & labelCounter, True) With theLabel .Caption = "Test" & labelCounter .Left = 10 .Width = 50 .Top = 10 End With End Sub 

有没有办法检查button是否已经添加,但是看不见? 或者为什么他们没有被添加。 任何帮助不胜感激。

一些东西:

  1. 你需要显示你的UserForm为vbModeless – 否则代码在UserForm2.Show停止
  2. 您正在创build一个名为Label的对象,然后在theLabel上使用With
  3. 您将需要增加三个标签的位置以避免重叠(我已经使用了Top )。

     Sub addLabel() UserForm2.Show vbModeless Dim theLabel As Object Dim labelCounter As Long For labelCounter = 1 To 3 Set theLabel = UserForm2.Controls.Add("Forms.Label.1", "Test" & labelCounter, True) With theLabel .Caption = "Test" & labelCounter .Left = 10 .Width = 50 .Top = 10 * labelCounter End With Next End Sub 

尝试下面的代码

 Set theLabel = UserForm2.Designer.Controls.Add("Forms.Label.1", "Test1", True)