在EXCEL中如何用VBA即时控制滚动条的终值变化
PrivateSubScrollBar1_Change()ScrollBar1.Min=Range("A1").ValueScrollBar1.Max=Range("A2...
Private Sub ScrollBar1_Change()
ScrollBar1.Min = Range("A1").Value
ScrollBar1.Max = Range("A2").Value
'ScrollBar1.Value = Range("A1").Value
End Sub
代码中设置了滚动条的初值、终值随着单元格A1、A2的改变而改变。但是只有当点击了滚动条后,滚动条的初值、终值才会改变。怎样才能使A1、A2的值发生改变之后滚动条的初值、终值立即作出改变呢?还有就是代码中加入'ScrollBar1.Value = Range("A1").Value后滚动条就不能进行滚动,应该怎样重新再对滚动条设置默认值呢? 展开
ScrollBar1.Min = Range("A1").Value
ScrollBar1.Max = Range("A2").Value
'ScrollBar1.Value = Range("A1").Value
End Sub
代码中设置了滚动条的初值、终值随着单元格A1、A2的改变而改变。但是只有当点击了滚动条后,滚动条的初值、终值才会改变。怎样才能使A1、A2的值发生改变之后滚动条的初值、终值立即作出改变呢?还有就是代码中加入'ScrollBar1.Value = Range("A1").Value后滚动条就不能进行滚动,应该怎样重新再对滚动条设置默认值呢? 展开
展开全部
代码放在工作表的change事件中
更多追问追答
追问
A1、A2的值我都是用下拉框控制的,放到change事件中还是需要点击一下单元格才能改变过来呀。
追答
下拉框也是需要选中单元格后,点击箭头才会更改值啊
只要单元格数据有修改,就会触发工作表的change事件
Private Sub Worksheet_Change(ByVal Target As Range)'本表的变更事件
If Target = Range("a1") Or Target = ("a2") Then
UserForm1.ScrollBar1.Min = Range("A1").Value
UserForm1.ScrollBar1.Max = Range("A2").Value
UserForm1.Show
End If
End Sub
Private Sub ScrollBar1_Change() '窗体上的滚动条变动事件
Range("b1").Value = UserForm1.ScrollBar1.Value
End Sub
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询