我需要動態創建標籤和按鈕,然後將它們添加到用戶窗體中的框架。我該怎麼做呢?似乎它應該比它實際上更容易。使用VBA將控件添加到Excel用戶窗體中的框架
8
A
回答
14
下面的代碼演示瞭如何動態填充與控制用戶窗體框架...
在我使用我有一個名爲幀1幀控制的形式,所以在UserForm_Initialize你叫Frame1.Controls。添加以在框架中嵌入控件。您可以設置返回到您在UserForm代碼模塊中定義的WithEvents控件變量的控件,以便您可以響應您想要的任何控件上的事件...
因此,使用此方法需要預先寫入您要創建的任何控件的任何事件代碼...
還要注意,即使頂部,左側,寬度和高度屬性不一定出現在智能感知中,您也可以定位和調整控件大小...
Private WithEvents Cmd As MSForms.CommandButton
Private WithEvents Lbl As MSForms.Label
Private Sub UserForm_Initialize()
Set Lbl = Frame1.Controls.Add("Forms.Label.1", "lbl1")
Lbl.Caption = "Foo"
Set Cmd = Frame1.Controls.Add("Forms.CommandButton.1", "cmd1")
End Sub
Private Sub Cmd_Click()
Cmd.Top = Cmd.Top + 5
End Sub
Private Sub Lbl_Click()
Lbl.Top = Lbl.Top + 5
End Sub
4
我對上述主題的變化。這只是一個4x4的按鈕陣列。創建一個用戶表單並將其添加到其代碼中。相同的概念可以與您的標籤一起使用(或參見上一個答案):
Private cmdLots(20) As MSForms.CommandButton
Private Sub UserForm_Initialize()
For i = 1 To 4
For j = 1 To 4
k = i + (4 * j)
Set cmdLots(k) = UserForm2.Controls.Add("Forms.CommandButton.1", "cmd1")
With cmdLots(k)
.Top = i * 25
.Left = (j * 80) - 50
.BackColor = RGB(50 * i, 50 * j, 0)
.Caption = "i= " & i & " j= " & j
End With
Next j
Next i
End Sub
相關問題
- 1. 使用VBA將VBA代碼添加到MS Access用戶窗體
- 2. 將事件添加到Windows窗體中的用戶控件
- 3. VBA將用戶窗體中的列表空字段添加到消息框中
- 4. Excel VBA用戶窗體使用vlookup
- 5. 從用戶控件動態添加文本框的值添加到主窗體
- 6. 添加OnChange事件VBA窗體控件
- 7. 將用戶控件添加到Windows窗體c時出錯#
- 8. 的Excel 2013 VBA用戶窗體添加COUNTIF計算
- 9. 無法將控件添加到窗體
- 10. 在Windows窗體中添加用戶控件(WPF)到面板c#
- 11. Excel 2010個的用戶窗體VBA
- 12. 訪問沒有窗體實例的VBA用戶窗體控件
- 13. 使用Windows窗體設計器添加用戶控件
- 14. 使用VBIDE從Excel用戶窗體中刪除控件
- 15. 將Web窗體控件添加到Windows窗體
- 16. 將控制檯appender添加到log4net中的窗體窗體
- 17. 將用戶組添加到Excel中
- 18. Excel VBA用戶窗體 - 設置與用戶窗體大小相同的圖表
- 19. 使用VBA將數據添加到Excel中的Sharepoint 2013列表
- 20. 使用VBA將數據添加到連續的Excel表格中
- 21. 如何將其他窗體的所有控件添加到Winforms中的窗體?
- 22. 使用實體框架添加新的MVC 5控制器使用實體框架腳手架錯誤
- 23. 將Word標題導出到Excel用戶窗體1文本框
- 24. 用戶控件添加到
- 25. 如何在運行時將用戶控件添加到窗口?
- 26. 將按鈕添加到窗體的控制框?
- 27. 如何將值添加到用戶窗體上的第二個列表框中
- 28. 使用Excel 2013 VBA建立從用戶窗體選項
- 29. 添加記錄使用實體框架
- 30. 將用戶控件集成到Visual Studio中的窗體
爲什麼``1'`在`add`方法的類名末尾? – Triztian 2012-02-03 19:18:48
我不知道。我知道,沒有這個,它就無法工作。 – 2015-07-21 17:39:05