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

如何无需VBA用Excel函数将条目-列表映射扁平化为两列对应表?

不用VBA实现Excel条目-列表映射扁平化

方法1:Excel 365/2021 动态数组版

如果你的Excel支持动态数组功能,直接用以下两步生成结果:

  • 提取所有非空列表项(比如放在D列):
    =FILTER(B:B,B:B<>"")
  • 匹配对应条目(放在C列):
    =XLOOKUP(ROW(FILTER(B:B,B:B<>"")),IF(A:A<>"",ROW(A:A)),A:A,,1)

公式说明:

  • FILTER(B:B,B:B<>"") 筛选出B列所有非空内容,直接生成完整的列表项列。
  • XLOOKUP 会定位每个列表项的行号,向上查找最近的非空A列单元格,返回对应的条目值。

方法2:全Excel版本通用版

如果用的是旧版Excel,按以下步骤操作:

  1. 在C1单元格输入公式,下拉填充至数据末尾:
    =IF(B1<>"",LOOKUP(2,1/(A$1:A1<>""),A$1:A1),"")
  2. 在D1单元格输入公式,下拉填充至数据末尾:
    =IF(B1<>"",B1,"")
  3. 选中C、D列,筛选掉空行,即可得到扁平化的两列结果。

公式说明:

  • LOOKUP(2,1/(A$1:A1<>""),A$1:A1) 利用LOOKUP的特性,找到当前行上方最后一个非空的A列单元格,也就是对应条目。
  • 两个IF公式只保留B列非空行的内容,后续筛选空行即可得到干净的结果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.30 01:10:01