excel等于某个值自动 隐藏/显示 整行 求教VBA代码

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了excel等于某个值自动 隐藏/显示 整行 求教VBA代码相关的知识,希望对你有一定的参考价值。

需求为:做好表格数据后运行代码,G列中的生成的任意数据等于0的单元格,自动整行隐藏,不等于0的数据显示;修改表格数据后,原本G列为0的数据修改为不等于0时 运行代码则从自动隐藏状态切换为显示状态,其他新增的G列中的数据等于0的单元格 则整行隐藏。能否定个快捷键按一下运行代码;如果能实现自动隐藏显示更好

excel如何使用vba代码隐藏行

  今天为大家分享excel中使用vba隐藏行的方法,不会的朋友可以参考本文,来看看吧!

  步骤

  1、首先我们打开一个工作样表作为例子。

  2、隐藏行的方法很简单,在工作表的行序列上点击鼠标右键,选择隐藏行即可隐藏。但是这种方法需要自己去寻找索要隐藏单元格所在的行首。

  3、使用vba则不需要这么麻烦,可以在任意选择单元格后,直接点击运行代码,则可以隐藏该单元格所在的行。

  4、我们使用alt+f11组合快捷键进入vbe编辑器,插入一个新的模块,并在模块中输入以下代码:

  Sub HideRow()

  Dim iRow As Long

  iRow = ActiveCell.Row

  ActiveSheet.Rows(iRow).Hidden = True

  ActiveSheet.Rows(iRow).Hidden = False

  End Sub

  5、我先将显示隐藏行取消,然后运行这段代码,刚才我们所处的是第10行,运行代码后。第10行被隐藏起来了。

  6、单元格被隐藏,但是仍然可以选取。我们将代码中的注释符’去掉,重新运行代码,可以将10行重新显示。这里可以看到activesheet.rows(irow)是对象。hidden是方法,参数是true或false。true为隐藏。false为显示。

追问

有原文链接吗

追答

你直接搜”excel如何使用vba代码隐藏行“就有这个文章,但是内容也就这么多啦。。。不好意思。。

参考技术A Sub test()
For Each Rng In Range(Cells(1, 7), Cells(Cells(1048576, 7).End(xlUp).Row, 7))
If Rng = 0 Then
Rows(Rng.Row).Hidden = True
Else
Rows(Rng.Row).Hidden = False
End If
Next
End Sub追问

大神只需要判断G列的数据是不是0然后隐藏/显示,您这个代码把ABCDEF有的数据全部都隐藏了

追答

g1:g9是空白单元格?

Sub test()
For Each Rng In Range(Cells(1, 7), Cells(ActiveSheet.UsedRange.Rows.Count, 7))
If Rng 0 Or IsEmpty(Rng) Then
Rows(Rng.Row).Hidden = False
Else
Rows(Rng.Row).Hidden = True
End If
Next
End Sub

追问

测试一下所以G1-G9没有填数据,但是大神这次这个代码不管是不是0的数据都隐藏了

追答

追问

大神我没啥基础,不懂是什么意思,麻烦您讲通俗一点

追答

截图上的不等号,网页上没有显示出来,修改下。空白行就不会隐藏了

本回答被提问者采纳

excel根据条件自动显示隐藏行 (不用宏和VAB代码实现)

看截图,当A1>40,黄色区域的整个行隐藏,否则显示,回答者不要用宏或VAB代码,也不要用把内容隐藏,而行还在。
同志们是自动显示隐藏,不要手动

先看下例子表格是什么样的,有利于更加方便的介绍怎么隐藏行。
隐藏行方法一:选中要隐藏的行,一行也可以,多行也行,一次隐藏多行也是可以的,现在说隐藏2,3行,先选中2,3行,然后右键,点击隐藏即可。
隐藏行方法二:还是按照方法一中的步骤,选中要隐藏的行,然后点击右上角的格式,再将鼠标放到隐藏和取消隐藏上,点击隐藏行,即可。
参考技术A 条件格式应该能满足你的要求 步骤如下, 1。鼠标选中21行以下的需要隐藏的所有行 2。格式-条件格式-使用公式确定要设置格式的单元格-新建规则-输入 =$b$9="内部调整" 3.设置格式-数字-自定义-输入 ;;; 确定 这样就做到了,B9=内部调整”不显示21行一下的行,但是内容还在, 参考技术B 按你说的要求,此题无解!
唯有用VBA代码才能实现你说的!

以上是关于excel等于某个值自动 隐藏/显示 整行 求教VBA代码的主要内容,如果未能解决你的问题,请参考以下文章

Excel:在第一列输入值时自动填充(复制)整行

Excel怎么设置:选中某个单元格,他就自动选中这个单元格所在的一整行数据?

获取整行的最佳方法,其中某列 = 某个值?

Excel中,如何根据某一列的值来修改整行的颜色?

EXCEL如何求出哪几个单元格里的数字之和等于某个特定值

如何基于公式突出显示excel中的行