Excel中这个函数过于生僻,研究了一下!还能按人民币符号求和……

这大半年,把Excel中的常用函数基本都写了一个遍,现在只能去挖掘生僻函数了,今天无意中就找到了一个惊喜……

她就是cell这个函数,非常的有趣,越是研究惊喜越多……让我们通过几个案例看一下!

案例1 | 获取文件名称及表名

=CELL("filename"

获取的是本文件的文章的路径+当前工作表名称

如果我们只想获取当前工作表的名称,那么我们可以使用其他函数处理一下!

=REPLACE(CELL("filename"),1,FIND("]",CELL("filename")),"")

查找到“]”的位置,使用REPLACE直接替换成空即可!

案例2 | 指定单元格的地址

基本的用法:直接指定对应的单元格获取地址

=CELL("address",A1)

这看上去也没什么用,不要急,配合结果为引用的方式有奇效

▍ 获取张飞所在的单元格地址

=CELL("address",OFFSET(A1,MATCH("张飞",A:A,)-1,))

这样我们就可以根据条件获取到对应内容的地址!

如果我们只是单纯的想看在哪一行或者一列那么可以这样!

▍ 获取张飞所在的

=CELL("row",OFFSET(A1,MATCH("张飞",A:A,)-1,))

第一参数ROW表示行,所以可以获取到行!

▍ 获取张飞所在的

=CELL("col",OFFSET(A1,MATCH("张飞",A:A,)-1,))

“col” 是COLUMN的缩写!获取的是对应的列,这里是A列,也就是第一列!

案例3 |  获取单元格的列宽成为可能

我们知道Excel中的基本都是用于处理单元格的数据,如果先获取单元格的一些属性基本不可能,但是cell可以!

="A列宽度"&INDEX(CELL("width",A1),1)

结果是一个数组:

第一个元素为:列宽,列宽以默认字号的一个字符的宽度为单位

第二个元素是真是否默认列宽,利用这点可以看那些列宽被人工调整过!

是否默认列宽,TRUE表示B列默认列宽,没有变更大小!

案例4 | 按人民币符号求和

=CELL("format",B2)

通过format可以获取到单元格中格式代码,不同的代码表示不同的含义!

这里我们获取到了美元格式和人民币格式的对应的格式代码!

有了格式,是否我们求和就有望了,但是cell函数只能获取到区域中左上角单元格的格式代码,如果我们给一个区域是没有意义!那怎么办?前辈们还是有办法的,研究发现,他支持数组!且要求结果是引用,那么只有INDRIECT和OFFSET可以了!

人民币公式:

=SUM($B$2:$B$11*(CELL("format",OFFSET($B$1,N(IF(1,ROW($1:$10))),))="C2-"))

美元公式:

=SUM($B$2:$B$11*(CELL("format",OFFSET($B$1,N(IF(1,ROW($1:$10))),))=",2-"))

新手阅读可能有点吃力,主要是cell第二参数特性决定了,这里主要是三维降维的处理,很多不支持区域的都可以使用此方式突破,函数高级的内容,不懂也没有关系!

还有一些,实战欠缺一些,大家有时间可以继续挖掘,第二参数的全部解释如下:

(0)

相关推荐