终于不用再为$符号怎么用而烦恼了

文摘   2024-12-24 10:16   湖北  

2000元课程

  免费学7天

函数+VBA



“$”在Excel公式中用于锁定引用的行号或列号,是不可或缺的基础知识。

  • $A$1,锁行锁列;

  • $A1,锁列不锁行;

  • A$1,锁行不锁列;

  • A1,不锁定。

不少入门已久的用户仍在困扰“锁列不锁行“和”锁行不锁列“有点傻傻分不清。

好消息是,随着Excel版本的更新,得益于数组运算和新函数的加持,你可能不再需要为$而烦恼了。

不信?来看两个常见的案例。

制作乘法表

制作乘法表是练习锁定的绝佳案例,以下是一个“五五乘法表“的半成品,核心部分的公式如下:

=B$2&"x"&$A3&"="&B$2*$A3

B$2锁住行号确保公式填充时依次引用B2:F2中的数据;

$A3锁住列号确保公式填充时依次引用A3:A7中的数据。

在Excel365版本中,整体引用B2:F2和A3:A7两个区域将其连接即可:

=B2:F2&"x"&A3:A7&"="&B2:F2*A3:A7

一个公式返回结果,无需向下或向右填充,自然用不着$来锁定引用。

B2:F2和A3:A7两个区域即两个数组,很明显,公式逻辑更好理解,操作更为简单。

同时,Excel365版本中新增的一批函数本身就是基于数组打造,如下公式可以实现同样效果,甚至不需要第2行和B列的辅助数据:

=MAKEARRAY(5,5,LAMBDA(a,b,a&"x"&b&"="&a*b))

其中的LAMBDA系列是从编程语言移植而来的函数,初学者有一定难度,但并非遥不可及,毕竟移植的目的就是要为更多不会编程的普通用户服务。

数据交叉查找

如下图所示的交叉查找是Excel十分常见的应用场景,而INDEX+MATCH的组合是经典的解决方案:

=INDEX($B$2:$D$9,MATCH($F2,$A$2:$A$9,0),MATCH(G$1,$B$1:$D$1,0))

公式用到了文章开头4种锁定模式种的3种,总共14个$让人眼花缭乱。

第一个MATCH的第一参数由一个值(F2)改为一个数据区域(F2:F5);

第二个MATCH如法炮制,G1改为数据区域G1:I1

公式摇身一变成为数组公式,就无需分析引用和锁定了:

=INDEX(B2:D9,MATCH(F2:F5,A2:A9,0),MATCH(G1:I1,B1:D1,0))

也可以用Excel365专属函数CHOOSECOLS和CHOOSEROWS搭配XMATCH来实现:

=CHOOSEROWS(CHOOSECOLS(B2:D9,XMATCH(G1:I1,B1:D1,0)),XMATCH(F2:F5,A2:A9,0))

好了,今天的Excel小课堂就到此结束,大家赶紧实际操作联系一下吧,有不懂的问题可以留言问我!感谢关注Excel880,还请多多转发,持续关注我们呀!

买课程可进永久答疑群,课程可免费试学点击下方链接即可

郑广学Excel实战教程




EXCEL880
Excel/WPS办公技巧分享 郑广学VBA/VSTO/JSA教程分享 课程咨询及付费定制表格加EXCEL880B
 最新文章