有人可以指导我如何在VBA中动态创建日期选择器控件吗? 这是我想要做的。我有一个宏,它将TextBox和ComboBox控件动态添加到VBA用户表单,具体取决于最终用户是否希望它可见。可见性(以及所有其他控制属性 - 宽度,高度等)由最终用户控制,方法是更新是/否,对照excel中“主”表中提供的控件名称的值。
这是我为TextBox和ComboBox控件所做的
`sub test()
---- some code
Dim txtTextBox As MSForms.TextBox
Dim cmbComboBox As MSForms.ComboBox
If 'some cell in excel ‘Master’ worksheet' = "ComboBox" Then
Set cmbComboBox = UserForm.Controls.Add("Forms.ComboBox.1", 'some cell in excel ‘Master’ worksheet')
cmbComboBox.top = 'some cell in excel ‘Master’ worksheet'
cmbComboBox.left = 'some cell in excel ‘Master’ worksheet'
cmbComboBox.Width = 'some cell in excel ‘Master’ worksheet'
cmbComboBox.height = 'cell in excel ‘Master’ worksheet'
----rest of my code
end sub`
我的问题是,如何动态添加日期选择器,就像我添加TextBox和ComboBox的方式一样。我使用Controls.Add正确的方法来做到这一点?如果是这样我怎么能这样做?有人可以帮我解决这个问题! 希望我的问题有道理。
答案 0 :(得分:0)
试试这个:
Dim dtDatePicker As Object
Set dtDatePicker = UserForm.Controls.Add("MSComCtl2.DTPicker", "dtp", True)
' Do whatever you want with dtDatePicker control here!