有关excel利用vba实现用户窗体上复选框控件的问题
2个回答
展开全部
方法一
如果是在工作表中使用复选框,右击复选框,在快捷菜单中单击选择“设置控件格式”,打开对话框如下图所示设置:
按alt+f11打开vbe窗口,插入模块,粘贴如下代码:
sub
隐藏()
if
[l1]
=
true
then
columns("b:c").entirecolumn.hidden
=
true
else
columns("b:c").entirecolumn.hidden
=
false
end
if
end
sub
再右击复选框单击选择“指定宏”,选定宏“隐藏”。
操作及效果:单击复选框则b:c隐藏或显示。
方法二
如果是在窗体中使用筛选框,则双击窗体上的复选框,出现如下代码框架:
private
sub
checkbox1_click()
end
sub
在框架中粘贴如下代码:
if
checkbox1.value
=
true
then
columns("b:c").entirecolumn.hidden
=
true
else
columns("b:c").entirecolumn.hidden
=
false
end
if
即变成如下完整代码:
private
sub
checkbox1_click()
if
checkbox1.value
=
true
then
columns("b:c").entirecolumn.hidden
=
true
else
columns("b:c").entirecolumn.hidden
=
false
end
if
end
sub
打开窗体,单击窗体上的复选框:
⑴未选中复选框时效果如下图示。
⑵选中复选框时效果如下图示。
仅供参考!
请采纳。
如果是在工作表中使用复选框,右击复选框,在快捷菜单中单击选择“设置控件格式”,打开对话框如下图所示设置:
按alt+f11打开vbe窗口,插入模块,粘贴如下代码:
sub
隐藏()
if
[l1]
=
true
then
columns("b:c").entirecolumn.hidden
=
true
else
columns("b:c").entirecolumn.hidden
=
false
end
if
end
sub
再右击复选框单击选择“指定宏”,选定宏“隐藏”。
操作及效果:单击复选框则b:c隐藏或显示。
方法二
如果是在窗体中使用筛选框,则双击窗体上的复选框,出现如下代码框架:
private
sub
checkbox1_click()
end
sub
在框架中粘贴如下代码:
if
checkbox1.value
=
true
then
columns("b:c").entirecolumn.hidden
=
true
else
columns("b:c").entirecolumn.hidden
=
false
end
if
即变成如下完整代码:
private
sub
checkbox1_click()
if
checkbox1.value
=
true
then
columns("b:c").entirecolumn.hidden
=
true
else
columns("b:c").entirecolumn.hidden
=
false
end
if
end
sub
打开窗体,单击窗体上的复选框:
⑴未选中复选框时效果如下图示。
⑵选中复选框时效果如下图示。
仅供参考!
请采纳。
展开全部
通常情况下,窗体在卸载后会销毁变量。如果对内存占用没有特别需求的话,可以考虑把unload
userform1换成userform1.hide,这样仅仅把窗体隐藏起来,在内存中并没有销毁窗体变量。
如果确实需要彻底卸载窗体,那么在unload之前将复选框结果保存在“自定义文档属性”(CustomDocumentProperties)中,下次显示窗体前从“自定义文档属性中”调用这个保存的结果即可。
userform1换成userform1.hide,这样仅仅把窗体隐藏起来,在内存中并没有销毁窗体变量。
如果确实需要彻底卸载窗体,那么在unload之前将复选框结果保存在“自定义文档属性”(CustomDocumentProperties)中,下次显示窗体前从“自定义文档属性中”调用这个保存的结果即可。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询