You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Excel如何将ROW(OFFSET)公式结果代入UNIQUE实现动态取值 无需VBA?

结论

不需要使用VBA,用Excel原生公式即可实现动态范围取值的需求。

具体实现方案

方案1:按你现有思路直接实现

用INDIRECT函数将拼接的文本地址转换为可被公式识别的单元格引用,最终公式为:
=UNIQUE(INDIRECT("A1:A"&ROW(OFFSET(A1,COUNTA(A:A)-1,0))))

提示:该方案用到的OFFSET、INDIRECT属于易失性函数,数据量较大时可能会提高计算负载。

方案2:高版本Excel优化方案(适用于Excel 365/2021及以上)

不需要单独计算最后一行行号,直接用TOCOL函数自动过滤A列空值,公式更简洁,计算效率更高:
=UNIQUE(TOCOL(A:A,1))
公式中TOCOL的第二个参数1代表跳过所有空单元格,A列新增、删除数据时公式会自动调整取值范围,完全匹配你的需求。

内容的提问来源于stack exchange,提问作者ClaudioM

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 05:54:02