如何使用Excel的CELL函数获取工作表的首个单元格地址
用CELL函数获取Excel工作表首个单元格地址
嘿,这个需求用Excel的CELL函数完全能搞定,我来给你一步步说明怎么实现:
先搞懂CELL函数的核心用法
CELL函数专门用来返回单元格的各类信息,它的语法是:
CELL(info_type, [reference], [row_absolute], [column_absolute], [external])
几个关键参数的作用:
*"address"*:作为info_type的取值,用于返回单元格的地址reference:指定要获取信息的单元格或区域,如果是区域,会自动返回该区域左上角单元格的地址- 第3、4个参数设为
1:会返回相对地址(比如A1),而不是默认的绝对地址($A$1)
针对你的需求的两种实现场景
场景1:获取工作表已使用区域的首个单元格地址
这应该是你例子里的情况(Page2返回A21,说明它的已使用区域从A21开始),步骤如下:
- 第一步:给工作表的已使用区域定义名称
打开「公式」选项卡的「名称管理器」,新建两个名称:- 名称填
Page1,引用位置输入:=Page1!$A$1:INDEX(Page1!$XFD:$XFD,MAX(ROW(Page1!$A:$XFD)*(Page1!$A:$XFD<>"")),MAX(COLUMN(Page1!$XFD:$XFD)*(Page1!$XFD:$XFD<>""))) - 同理新建
Page2,把引用位置里的Page1替换成Page2即可
- 名称填
- 第二步:用CELL函数获取地址
输入公式:
就能得到Page1已使用区域的首个单元格相对地址(比如=CELL("address"; Page1; 1; 1)A1);对应Page2的公式是:
这样就会返回你预期的=CELL("address"; Page2; 1; 1)A21啦。
场景2:获取工作表固定的A1单元格地址
如果你的“首个单元格”就是指工作表的A1(不管有没有数据),那公式更简单:
=CELL("address"; Page1!A1; 1; 1)
这个公式直接返回Page1工作表A1的相对地址A1,Page2的话替换成Page2!A1即可。
小提示
- 参数分隔符注意:如果你的Excel是中文版本,参数用逗号(
,)分隔;英文版本用分号(;),根据你的例子调整就行。 - 不想定义名称的话,可以直接把已使用区域的公式嵌入CELL函数,比如Page2的公式可以写成:
只是这样公式会比较长,维护起来不如定义名称方便。=CELL("address"; Page2!$A$1:INDEX(Page2!$XFD:$XFD,MAX(ROW(Page2!$A:$XFD)*(Page2!$A:$XFD<>"")),MAX(COLUMN(Page2!$XFD:$XFD)*(Page2!$XFD:$XFD<>""))); 1; 1)
内容的提问来源于stack exchange,提问作者luffy92
相关产品推荐
相关产品推荐

