excel 隐藏行问题 VBA

问题:sheet1是对其他几张工作表的统计,都是公式链接,没有手工输入。(sheet1)A1=(sheet2)A1+(sheet3)A1+(sheet4)A1+(shee... 问题:sheet1是对其他几张工作表的统计,都是公式链接,没有手工输入。
(sheet1)A1=(sheet2)A1+(sheet3)A1+(sheet4)A1+(sheet5)A1
A2、A3、A4......A10以此类推。
想得到这样的效果:当(sheet1)A1=0时,隐藏A1所在的第一行,如果A1的结果不等于0,则不隐藏。A2、A3、A4......A10以此类推。
想用VBA实现这种效果,求助!
前面两位的答案好像都要设一个控件。有没有办法是不需要设控件就能实现的啊?谢谢!
ALT+F8也就是相当于控件的功能啊。有没有什么办法可以自动实现啊?只要A1的结果发生变化就自动隐藏或显示。
展开
 我来答
chiefzjh
2010-03-22 · TA获得超过9088个赞
知道大有可为答主
回答量:7013
采纳率:37%
帮助的人:2323万
展开全部
Sub mHide()
Dim i
For i = 1 To [a65536].End(3).Row
If Cells(i, 1).Value = 0 Then Cells(i, 1).EntireRow.Hidden = True
Next i
End Sub

#ps 给你自动实现的,只要在A列输入0,整行隐藏.右击工作表标签,查看代码,把下面的代码帖在你的工作表代码窗口就可以了
Private Sub Worksheet_Change(ByVal Target As Range)
if target.column=1 and target.value=0 then target.row.entirerow.hidden=true
End Sub
qad1103
2010-03-22 · TA获得超过1441个赞
知道大有可为答主
回答量:1180
采纳率:100%
帮助的人:1011万
展开全部
Alt + F8,运行宏就可以了,不一定非要设控件.

子易空间站 - Excel培训专家
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
mafan8
2010-03-23 · TA获得超过1.7万个赞
知道小有建树答主
回答量:927
采纳率:0%
帮助的人:775万
展开全部
新建宏:
for i=1 to 100 '最大值为数值的最大行
if sheet1.cells(i,1)=0 then sheet1.rows(i).hidden=true
'判定当前行第一个(A列)单元格数据是否是0,如果是0让当前行隐藏
next

这个是不需要控件的,只需要创建新的宏,然后输入一个宏名称,比如名称为Hid_row
创建后会出现代码窗口
Sub Hid_row()

End Sub

然后在这两行中间插入我所说的代码

最后点击运行宏即可,当然公式中sheet1需要你进行更改,改为你当前工作表名称
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式