EXCEL 某单元格不为空时,提取该单元格所在行所有数据到另一个工作表
如上图,第一个工作表里C列有的是空白,有的是记录了员工的出勤情况,现在想把C列所有不为空单元格的所在行全部自动汇总到另一个工作表内。实现下图用什么公式可以这样自动实现筛选...
如上图,第一个工作表里C列有的是空白,有的是记录了员工的出勤情况,现在想把C列所有不为空单元格的所在行全部自动汇总到另一个工作表内。实现下图
用什么公式可以这样自动实现筛选汇总? 展开
用什么公式可以这样自动实现筛选汇总? 展开
5个回答
展开全部
用数组公式可实现
={INDEX(C:C,SMALL(IF($C$2:$C$200="",65536,ROW($C$2:$C$200)),ROW(A1)))&""}
可以将这个公式,复制到第一个表格D1中先试试看
数组公式,要ctrl+shift+enter三键结束
将其中的单元格,改成你表里的单元格即可
这是提取C列的值,同理,B列、A列公式为
={INDEX(B:B,SMALL(IF($C$2:$C$200="",65536,ROW($C$2:$C$200)),ROW(A1)))&""}
={INDEX(A:A,SMALL(IF($C$2:$C$200="",65536,ROW($C$2:$C$200)),ROW(A1)))&""}
={INDEX(C:C,SMALL(IF($C$2:$C$200="",65536,ROW($C$2:$C$200)),ROW(A1)))&""}
可以将这个公式,复制到第一个表格D1中先试试看
数组公式,要ctrl+shift+enter三键结束
将其中的单元格,改成你表里的单元格即可
这是提取C列的值,同理,B列、A列公式为
={INDEX(B:B,SMALL(IF($C$2:$C$200="",65536,ROW($C$2:$C$200)),ROW(A1)))&""}
={INDEX(A:A,SMALL(IF($C$2:$C$200="",65536,ROW($C$2:$C$200)),ROW(A1)))&""}
追问
请问65536是什么意思啊
追答
65536是最大行,也就是当单元格时空值时,行数=65536,从而在用small排序时,排到最后面
展开全部
要灵活点,这个用筛选,选择性粘贴比用公式方便。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
直接用筛选功能就能实现,筛选所有非空白项目,然后复制到另外一个工作表
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用高级筛选
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
全选把空的点掉就可以了
追问
我知道可以用筛选,有没有什么公式能自动在另一个工作表里实现,谢谢啦
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询