Excel公式跳过空白单元格:活动接送人员区域汇总优化求助
解决活动接送人员区域汇总的无空白行需求
核心问题
原逐行判断的公式下拉后会产生大量空白行,需要动态筛选符合条件的记录并连续排列显示。
方案一:使用动态数组公式(Excel 365/2021及以上版本)
这是最简洁高效的方法,利用FILTER函数直接提取目标数据:
- Sheet2提取Zone 1嘉宾姓名:在A1单元格输入
公式会自动返回所有Sheet1中C列为"Zone 1"的嘉宾姓名,且自动连续排列,无空白行。=FILTER(Sheet1!A:A, Sheet1!C:C="Zone 1", "") - Sheet2提取对应出发地:在B1单元格输入
该公式会和A列姓名一一对应,直接提取对应出发地,无需依赖VLOOKUP。=FILTER(Sheet1!B:B, Sheet1!C:C="Zone 1", "")
方案二:兼容旧版Excel(无动态数组功能)
若使用Excel 2019及更早版本,用INDEX+SMALL+IF组合数组公式实现:
- Sheet2提取Zone 1嘉宾姓名:在A1单元格输入后,按
Ctrl+Shift+Enter确认(数组公式),再下拉填充直到出现空值:=IFERROR(INDEX(Sheet1!A:A, SMALL(IF(Sheet1!C:C="Zone 1", ROW(Sheet1!C:C)), ROW(A1))), "") - Sheet2提取对应出发地:在B1单元格输入后同样按
Ctrl+Shift+Enter确认,下拉填充:=IFERROR(INDEX(Sheet1!B:B, SMALL(IF(Sheet1!C:C="Zone 1", ROW(Sheet1!C:C)), ROW(A1))), "")
补充说明
- 方案一中
FILTER的第三个参数""用于在无符合条件记录时返回空值,避免错误提示。 - 方案二中的数组公式通过
SMALL筛选符合条件的行号,再用INDEX提取对应内容,IFERROR用来隐藏超出有效记录后的错误值。
内容的提问来源于stack exchange,提问作者NJJaensch
相关产品推荐
相关产品推荐

