excel vba 用代码在窗体中添加控件
在excel2007中,希望在窗体初始化时,扫描表格框架,并在窗体的指定位置上添加一个指定名字(name和caption)的label或textbox,请问怎么写代码,百...
在excel 2007中,希望在窗体初始化时,扫描表格框架,并在窗体的指定位置上添加一个指定名字(name和caption)的label或textbox,请问怎么写代码,百度都搜爆了,群里也都问了,没找到理想方法。
展开
2个回答
展开全部
如果添加的控件不是很多,可以先添加好控件,再用代码更改控件的属性和可见性即可实现相同的效果。
追问
因为表格框架不变的,但是框架里的内容经常变动,而且数量也变动,有时候能有100多项,有时候只有10多项,所以想做个自动扫描,自动添加的
追答
不能上传附件,比较难以说清楚。
以下代码应该可以实现了。注意要新建一个userform1
Private Sub UserForm_Activate()
For i = 1 To 3
Set optionBT = UserForm1.Controls.Add("forms.label.1", i, True)
optionBT.Left = 10
optionBT.Top = (i - 1) * 30 + 3
optionBT.Width = 70
optionBT.Height = 20
optionBT.Caption = i Next i
UserForm1.Height = (Range("Z1").End(xlToLeft).Column + 1) * 30
End Sub
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Private Sub Form_Load()
HScroll1.Max = 200 '最大值
HScroll1.Min = 0 '最小值
HScroll1.Value = 100 '初始滚动值
HScroll1.LargeChange = 10 '大改变
HScroll1.SmallChange = 5 '小改变
End Sub
Private Sub HScroll1_Change()
Print HScroll1.Value
End Sub
不懂请追问,满意请采纳
HScroll1.Max = 200 '最大值
HScroll1.Min = 0 '最小值
HScroll1.Value = 100 '初始滚动值
HScroll1.LargeChange = 10 '大改变
HScroll1.SmallChange = 5 '小改变
End Sub
Private Sub HScroll1_Change()
Print HScroll1.Value
End Sub
不懂请追问,满意请采纳
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询