excel vba 用代码在窗体中添加控件

在excel2007中,希望在窗体初始化时,扫描表格框架,并在窗体的指定位置上添加一个指定名字(name和caption)的label或textbox,请问怎么写代码,百... 在excel 2007中,希望在窗体初始化时,扫描表格框架,并在窗体的指定位置上添加一个指定名字(name和caption)的label或textbox,请问怎么写代码,百度都搜爆了,群里也都问了,没找到理想方法。 展开
 我来答
figoba
2011-12-23
知道答主
回答量:43
采纳率:0%
帮助的人:26.4万
展开全部
如果添加的控件不是很多,可以先添加好控件,再用代码更改控件的属性和可见性即可实现相同的效果。
追问
因为表格框架不变的,但是框架里的内容经常变动,而且数量也变动,有时候能有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
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名_热心网友
2012-01-05 · TA获得超过719个赞
知道大有可为答主
回答量:3827
采纳率:0%
帮助的人:8402万
展开全部
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

不懂请追问,满意请采纳
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式