怎么在excel中编写 多行条件隐藏的 宏啊

我想在excel中编写一个这样的宏,该宏满足:1、保证含有数据的每一行之间最多空出来一行,其他的都隐藏;2、在满足条件1的情况下,如果I列和K列中数据满足:至少一个非零,... 我想在 excel 中 编写一个这样的 宏,该宏满足:
1、保证含有数据的每一行之间最多空出来一行,其他的都隐藏;

2、在满足条件1的情况下,如果 I 列 和 K 列 中数据满足:至少一个非零,则显示(就是不隐藏)该数据所在的行;反之,则隐藏该行。
3、选定的范围为:A1 到 N10000
展开
 我来答
匿名用户
2013-12-19
展开全部
老四,以下代码可用,不过数据较多时可能效率不太高,希望能帮到你。

Sub Macro1()
Dim HideRow(10000) As Boolean
For a = 1 To 10000
If Application.WorksheetFunction.Count(Range("A" & CStr(a), "N" & CStr(a))) = 0 Then
If Application.WorksheetFunction.Count(Range("A" & CStr(a + 1), "N" & CStr(a + 1))) = 0 Then
Rows(CStr(a) & ":" & CStr(a)).Select
Selection.EntireRow.Hidden = True
HideRow(a) = True
End If
Else
If Range("I" & CStr(a)) = 0 And Range("K" & CStr(a)) = 0 Then
Rows(CStr(a) & ":" & CStr(a)).Select
Selection.EntireRow.Hidden = True
HideRow(a) = True
End If
End If
Next a
End Sub
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式