加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

[Excel函数]有趣的CELL(一):忽略隐藏列求和

(2016-07-09 22:18:50)
标签:

杂谈

作者 :EXCELERS

CELL函数属于信息类函数,返回有关单元格的格式、位置或内容等信息,一般情况下应用比较少。当然啦,用的情况少,不代表不实用,更不代表木有用;正所谓物以稀为贵,发以疏为珍,所以越是稀疏越是珍贵(某语)——近期我们就通过几个实例,学习下有趣而强大的CELL函数。

语法:CELL(info_type, [reference])

·        ● Info_type    必需。 一个文本值,指定要返回的单元格信息的类型。 下面的列表显示了 Info_type 参数的可能值及相应的结果。

·         ● Reference    可选。 需要其相关信息的单元格。 如果省略,则将 Info_type 参数中指定的信息返回给最后更改的单元格。 如果参数 reference 是某一单元格区域,则函数 CELL 只将该信息返回给该区域左上角的单元格。

——以上无聊无趣头大头疼的信息引用自Excel帮助文件,仅供伙伴们参考,大清早的可以纠结蛋黄吃不吃,但真不必纠结上述语法说明,看不懂咱就不甭看了;下面咱们通过一个小例子,忽略隐藏列统计求和,对CELL函数稍加了解。

http://ww1/large/005IRek6gw1f5jy9nxevwj30e707q0ui.jpg

如上图,是一份某星球百强公司的人员信息表。B列、E列是隐藏的,现在需要忽略掉隐藏列,对每个人员的成绩在H列求和。

有朋友想,可以用SUBTOTAL函数——抱歉,SUBTOTAL函数只对隐藏行求和有效。

可能也有人说了,这题儿也忒……简单了!H2输入公式=C2 D2 F2 G2,向下填充就好了。

——这是赤果果的逼俺发大招啊!

打个响指,假设数据有七百多列,主观性的隐藏了其中的一百多列,同时隐藏列是动态的,今天隐藏这几列,明天隐藏那几列,那可如何是好呢? 哼!~

http://ww1/large/005IRek6gw1f5jy9vyd75j305i05i3ye.jpg



1

A10单元格输入公式,并横向填充至G10单元格。

=CELL("width",A1)

Cell是单元格的意思,Width是宽度的意思,这个公式的意思就是获取A1单元格的列宽。当列隐藏时,列宽为0。以此判断A:G列是否处于隐藏状态。

http://ww2/large/005IRek6gw1f5jyadrn3aj30ej082ac0.jpg



2

H2单元格输入公式,并向下填充至H9单元格。

=SUMIF($B$10:$G$10,">0",B2:G2)

这是一个简单的条件求和函数,通过判断B10:G10单元格区域的值是否大于0,来对B2:G2区域的值求和,需要注意的是SUMIF第一参数,即条件范围需绝对引用。结果如下:

http://ww1/large/005IRek6gw1f5jycd5rh0j30fo091jtr.jpg


此时想必会有好学聪慧的小伙伴问,能不能用一个数组公式得出H列的结果?

比如在H2输入公式:

=SUMPRODUCT((CELL("width",B1:G1)>0)*B2:G2)

答案是否定的,上述公式的结果为错误值。

至于原因,开篇的CELL语法里,有这么一句说明:如果参数 reference 是某一单元格区域,则函数 CELL 只将该信息返回给该区域左上角的单元格。。。。。



暖心小贴士:

·         ● 在计算列宽时,CELL函数采用的是四舍五入后取整的计算方式,假如列宽窄细到0.49及以下,则CELL函数计算结果为0,列宽为0.5,则计算结果为1。——意思是,CELL函数计算结果为0时,并不都是隐藏列的情况,当然,这种情况很少见。怎么个少见法呢?就是那个六小龄童无缘春晚惹众怒 然并卵春晚好评如潮差评为0的奇闻异事般的少见。。。。

·         ● 通常只有当单元格的值属性发生改变或者使用【F9】快捷键进行公式重算时,工作表函数才会重新计算,所以列宽的改变并不会造成CELL函数的自动重算。——举例来说,当你把上图中的D列隐藏,H列CELL函数的结果并不会发生改变,解决方法,看我手指的方向——→请参见本段第一句话。

·         明天咱们就继续讲CELL函数——利用CELL函数制作具有模糊查询效果的数据有效性下拉菜单。比如酱紫样子:

http://ww1/large/005IRek6gw1f5jyei1l06g30ci0dwwm7.gif

转发请注明出处 谢谢。@Excelers


0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有