Excel中$符号的妙用

2019-12-26 11:24:39 浏览数 (2)

Excel 使用过程中,不知道你有没有用到过 $ ,如果从来都没有用到过,可能代表你的修为还不够深,来看看为什么这么说。

场景1. 分类占比统计

假设有如下表格:

问题类型

问题个数

弱覆盖

37

过覆盖

29

重叠覆盖

47

模三干扰

63

外部干扰

67

现在要统计每项问题的占比,你打算怎么写公式? 添加辅助列总计,然后占比=B2/C2

这样好像每次都需要手动计算问题总计的结果,然后修改辅助列的值,不够智能; 总计用sum函数不用手工计算结果? 占比=B2/SUM(B2:B6)

外部干扰占比居然是100%,结果有问题占比,看看下边的公式,变成了这样 占比=B3/SUM(B3:B7) 占比=B4/SUM(B4:B8) 占比=B5/SUM(B5:B9) 占比=B6/SUM(B6:B10) 这可咋办呢? $ 闪亮登场 先看公式 占比=B2/SUM(B$2:B$10) 再看结果

哇,结果好像跟方法 计算结果相同。 原理:B$2:B$10将求和范围锁定为下图范围

场景2. 多列VLOOKUP

假设现在要将每个班的成绩汇总到年级花名册,每个班上报的成绩中,学生编号是没有顺序的,而年级花名册中学生编号是从小到大排列的,此时你可能需要用到VLOOKUP函数。

笨方法,老老实实针对每一列写不同的公式,写三次 语文=VLOOKUP(B2,Sheet3!A:B,2,0) 数学=VLOOKUP(B2,Sheet3!A:C,3,0) 英语=VLOOKUP(B2,Sheet3!A:D,4,0)

结果是没问题,但是要写三次,如果要关联的列比较多的话就比较麻烦了。 $ 闪亮登场 先用下边公式 语文=VLOOKUP($B2,Sheet3!$A:B,2,0) 分别向下拉,向右拉,得到下表

结果不对啊,三列全部是语文成绩,仔细看下公式 数学=VLOOKUP($B2,Sheet3!$A:C,2,0) 英语=VLOOKUP($B2,Sheet3!$A:C,2,0) 第三参数全部为2,所以都是语文成绩,将数学索引参数修改为3,英语索引参数修改为4即可得到正确结果

如上图,虽然得到了正确结果,但是也需要手动修改索引参数,列少时可以操作,列多时很容易出错,且和方法相比,效率优势并不明显。 此时,COLUMN派上用场,这个函数可以获取列号。这里2、3、4正好是BCD列的列号,公式这么写 语文=VLOOKUP($B2,Sheet3!$A:B,COLUMN(B2),0) 分别向右向下拉,即可得到正确结果

原理:

  • $B2锁定了B列,但是向下拉时没有锁定行,依次递增;
  • $A:B锁定了班级成绩表的学生编号列,向右拉时没有锁定右边界,依次递增;
  • COLUMN(B2)=2,向右拉时,依次变为3、4

场景3. 固定单元格

假设场景1的表格多了一行

问题类型

问题个数

弱覆盖

37

过覆盖

29

重叠覆盖

47

模三干扰

63

外部干扰

67

总计

243

现在要添加每类问题占比 笨方法,每行写不同的公式 =B2/B7 =B3/B7 =B4/B7 =B5/B7 =B6/B7 =B7/B7

如上图,可以得到正确结果,但是效率太低了。 使用$锁定行和列 将公式修改为=B2/$B$7,然后向下拉,得到如下结果

本方法只书写一次公式,就得到了想要的结果,效率很赞。

总结

excel中每个单元对应一个编号,其中字母代表列号,数字代表行号,在行号或者列号前添加$代表锁定行或者锁定列,在一些场景中可以起到事半功倍的效果,怎么样,你学到了吗? 更多精彩内容,请关注公众号了解。

0 人点赞