excel VBA 空行自动隐藏
工作表中间行7到行107是一个数据表,其它上面和下面的行是文字,其中D列到K列,即D7;K107中的数据是按条件自动显示的,从上到下行数不确定,不会超过D107行,,想把...
工作表中间 行7到行107是一个数据表,其它上面和下面的行是文字,其中D列到K列,即D7;K107中的数据是按条件自动显示的,从上到下行数不确定,不会超过D107行,,想把107行上面的空白行按条件显示数据时自动隐藏,,VBA怎么写,
最好每句VBA有说明注解,谢谢了
图中第10行和第108行之间的D列到K列没有数据,是手动隐藏的,想实现自动隐藏
. 展开
最好每句VBA有说明注解,谢谢了
图中第10行和第108行之间的D列到K列没有数据,是手动隐藏的,想实现自动隐藏
. 展开
1个回答
展开全部
Sub Macro1()
For i = 1 To 108
If Cells(i, 4) = "" And Cells(i, 11) = "" Then
Rows(i).EntireRow.Hidden = True
Else
Rows(i).EntireRow.Hidden = False
End If
Next
End Sub
For i = 1 To 108
If Cells(i, 4) = "" And Cells(i, 11) = "" Then
Rows(i).EntireRow.Hidden = True
Else
Rows(i).EntireRow.Hidden = False
End If
Next
End Sub
更多追问追答
追问
把1改成8就好用了。
有没有办法改成一次性隐藏,不要一行行隐藏
刚才自己录了一个宏,就是选中行然后隐藏
Sub Macro2()
Rows("15:37").Select
Selection.EntireRow.Hidden = True
End Sub
看了下代码,能不能写个VBA,判断D列的空白行,得出Rows("15:37"),然后一次性隐藏?
我不懂VBA,说错了见谅。
谢谢
追答
Sub Macro1()
For i = 8 To 108
If Cells(i, 4) = "" And Cells(i, 11) = "" Then Exit For
Next
For u = 108 To 8 Step -1
If Cells(u, 4) = "" And Cells(u, 11) = "" Then Exit For
Next
Rows(i & ":" & u).EntireRow.Hidden = True
End Sub
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询