excel里如何通过判断其中一行某值为0则自动删除整行?
如题excel里如何通过判断其中一行某值为0则自动删除整行?假如某行的入仓数量为0,则不显示这行,这样也可以...
如题 excel里如何通过判断其中一行某值为0则自动删除整行? 假如某行的入仓数量为0,则不显示这行,这样也可以
展开
展开全部
应该是判断某列值是否为0吧,假设数据是在C列
1.非自动的自动筛选。
选中整个数据表,
(菜单)数据-筛选-自动筛选。
C1下拉箭头,选自定义-不等于-0
如果有新输入的数据。要重新操作一遍。而且数据是筛选隐藏起来的,不是删除
2.查找的方法
选中C列,Ctrl+F查找
查找内容:0
点击选项,勾选"单元格匹配"(否则会把10也找到的)
点击查找全部。
点在对话框下方的结果列表中,按Ctrl+A。则可看到C列是0的单元格都被选中了。
这个时候可以选择隐藏,也可选择删除。
隐藏的方法:
(菜单)格式-行-隐藏
删除的方法:
(菜单)编辑-删除。选择整行。确定
输入新的数据需要重新操作。
3.编程的方法:
选中需要自动删除0所在行的工作表。
点击工作表标签,右键,查看代码。
复制以下代码到光标处:
'****************************
Private
Sub
Worksheet_Change(ByVal
Target
As
Range)
For
i
=
Application.WorksheetFunction.CountA(Range("C:C"))
To
1
Step
-1
If
Cells(i,
3)
=
0
Then
Cells(i,
3).EntireRow.Delete
'
Cells(i,
3).EntireRow.Hidden
=
True
End
If
Next
End
Sub
'****************************
Alt+F11回到Excel中,在C列输入一个0,则0所在行就会被删除。如果想改为隐藏的话,将Cells(i,
3).EntireRow.Delete前面加上单引号,同时把
'Cells(i,
3).EntireRow.Hidden
=
True前面单引号去掉。
1.非自动的自动筛选。
选中整个数据表,
(菜单)数据-筛选-自动筛选。
C1下拉箭头,选自定义-不等于-0
如果有新输入的数据。要重新操作一遍。而且数据是筛选隐藏起来的,不是删除
2.查找的方法
选中C列,Ctrl+F查找
查找内容:0
点击选项,勾选"单元格匹配"(否则会把10也找到的)
点击查找全部。
点在对话框下方的结果列表中,按Ctrl+A。则可看到C列是0的单元格都被选中了。
这个时候可以选择隐藏,也可选择删除。
隐藏的方法:
(菜单)格式-行-隐藏
删除的方法:
(菜单)编辑-删除。选择整行。确定
输入新的数据需要重新操作。
3.编程的方法:
选中需要自动删除0所在行的工作表。
点击工作表标签,右键,查看代码。
复制以下代码到光标处:
'****************************
Private
Sub
Worksheet_Change(ByVal
Target
As
Range)
For
i
=
Application.WorksheetFunction.CountA(Range("C:C"))
To
1
Step
-1
If
Cells(i,
3)
=
0
Then
Cells(i,
3).EntireRow.Delete
'
Cells(i,
3).EntireRow.Hidden
=
True
End
If
Next
End
Sub
'****************************
Alt+F11回到Excel中,在C列输入一个0,则0所在行就会被删除。如果想改为隐藏的话,将Cells(i,
3).EntireRow.Delete前面加上单引号,同时把
'Cells(i,
3).EntireRow.Hidden
=
True前面单引号去掉。
展开全部
excel中公式会因增删行列而改变,是因为excel系统试图让公式指向原来的位置。例如公式=a一*二,如果在第一行前插入了一行,那么公式会变为=a二*二,因为公式变化后的a二正是插入行之前的a一;再如公式=sum(a一:a一0),如果在第一列前插入了一列,那么公式会变为=sum(b一:b一0),因为公式变化后的b一:b一0区域正是插入行之前的a一:a一0区域。
有时候,我们不希望excel的公式因为增删行列而变化,一般需要使用indirect来实现。例如我希望公式=sum(a一:a一0)永远是对a列的前一0行计算合计,无论插入删除行列都不要改变,那么我们的公式改为这样=sum(indirect("a一:a一0"))就可以了,因为引用的区域a一:a一0是一个字符串变量,excel不知道是区域,所以不会因为增删行列而改变
有时候,我们不希望excel的公式因为增删行列而变化,一般需要使用indirect来实现。例如我希望公式=sum(a一:a一0)永远是对a列的前一0行计算合计,无论插入删除行列都不要改变,那么我们的公式改为这样=sum(indirect("a一:a一0"))就可以了,因为引用的区域a一:a一0是一个字符串变量,excel不知道是区域,所以不会因为增删行列而改变
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |