机器编号 日期 产品编号
B1155AXVN 2012-6-1 156CMU25
B1155AXVN 2012-6-6 156CMU25
如何用VBA语言来实现,当日期小于系统日期时,2012-6-1这行自动隐藏。
我在模块里面插入下面代码后,没有效果。
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Column <> 2 Then Exit Sub
If Target.Count > 1 Then Exit Sub
If Target = "" Then Exit Sub
If Target < Date Then
Range(Target.Row & ":" & Target.Row).EntireRow.Hidden = True
End If
End Sub
excel满足条件时自动隐藏
答案:3 悬赏:70
解决时间 2021-02-02 09:50
- 提问者网友:离殇似水流年飞逝
- 2021-02-01 11:48
最佳答案
- 二级知识专家网友:我们只是兮以城空
- 2021-02-01 12:45
Excel 2003:
单击菜单“格式→工作表→隐藏”,工作表即被隐藏。
Excel 2007/2010:
方法一:在“开始”选项卡的“工作表”组中,单击“格式→隐藏和取消隐藏→隐藏工作表”。
方法二:右击所选择的工作表标签,在弹出的快捷菜单中选择“隐藏”即可。
要取消隐藏工作表 ,用下面的方法,但一次只能取消一个工作表的隐藏:
Excel 2003:
单击菜单“格式→工作表→取消隐藏”,在弹出的“取消隐藏”对话框中选择某个工作表,单击“确定”。
单击菜单“格式→工作表→隐藏”,工作表即被隐藏。
Excel 2007/2010:
方法一:在“开始”选项卡的“工作表”组中,单击“格式→隐藏和取消隐藏→隐藏工作表”。
方法二:右击所选择的工作表标签,在弹出的快捷菜单中选择“隐藏”即可。
要取消隐藏工作表 ,用下面的方法,但一次只能取消一个工作表的隐藏:
Excel 2003:
单击菜单“格式→工作表→取消隐藏”,在弹出的“取消隐藏”对话框中选择某个工作表,单击“确定”。
全部回答
- 1楼网友:狠傷凤凰
- 2021-02-01 14:27
你按alt+f11,把下面代码放进去,保存。退出代码窗口,然后你的a1:c1(合并的单元格取最左边a1值)等2时就会自动隐藏,其它值会显示。
private sub worksheet_change(byval target as range)
if range("a1").value = 2 then
rows("10:10").select
selection.entirerow.hidden = true
else
rows("9:11").select
selection.entirerow.hidden = false
end if
range("a1").select
end sub
- 2楼网友:零负荷的放任
- 2021-02-01 13:22
这个过程不是在模块里粘贴的,是在你的工作表名称上点鼠标右键,选查看代码,在打开的窗口里粘贴的,并且是在选择的单元格变化时触发,所以你要把B列所有要设置的单元格逐一选择一遍才能达到你想要的效果.
如果你要一次把B列所有符合条件的行都隐藏.用循环去做,(代码也是在当前工作表查看代码然后粘贴,然后在工作表按ALT+F8,选中执行)
sub 隐藏B列小于当前日期的行()
endrow=range("B65536").end(xlup).row
for i=1 to endrow
if range("B" &i)=date then range("B &i).entirerow.hidden=true
next
end sub
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯