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

如何结合IF、INDEX/MATCH等函数实现按教师分表同步学生离校数据?

用INDEX/MATCH+条件函数实现教师专属离校记录同步

先明确各表结构(统一列名假设)

先给各表列名做定义,方便后续写函数:

  • Student Reference表:A列=学生姓名,B列=对应教师姓名
  • Changes表:A列=日期,B列=学生姓名,C列=离校安排类型(自驾/校车/托管)
  • 教师专属标签页:比如「张老师」页,表头和Changes一致:A=日期,B=姓名,C=安排类型

教师标签页的函数实现

在教师标签页的A2单元格(第一行是表头),输入以下数组公式(旧版Excel输入后按Ctrl+Shift+Enter确认,新版可直接回车):

=IFERROR(INDEX(Changes!A:A, SMALL(IF(INDEX(Student Reference!B:B, MATCH(Changes!B:B, Student Reference!A:A, 0))="张老师", ROW(Changes!B:B)-1), ROW(A1))), "")

公式拆解

  • MATCH(Changes!B:B, Student Reference!A:A, 0):在学生参考表中匹配Changes表的学生姓名,返回对应行号
  • INDEX(Student Reference!B:B, 上述MATCH结果):通过行号提取该学生的对应教师
  • IF(上述INDEX结果="张老师", ROW(Changes!B:B)-1):判断当前Changes记录的学生是否属于张老师,是则返回Changes表的行号(减1是跳过表头行)
  • SMALL(..., ROW(A1)):按顺序提取符合条件的行号,下拉时ROW(A1)会自动变为ROW(A2)/ROW(A3),依次取出第1、2、3条符合记录
  • INDEX(Changes!A:A, 上述SMALL结果):根据行号取出Changes表的日期
  • IFERROR(..., ""):无更多记录时显示空值,避免报错

复制到其他列

把B2和C2的公式替换对应列即可:

  • B2(姓名列):
=IFERROR(INDEX(Changes!B:B, SMALL(IF(INDEX(Student Reference!B:B, MATCH(Changes!B:B, Student Reference!A:A, 0))="张老师", ROW(Changes!B:B)-1), ROW(A1))), "")
  • C2(安排类型列):
=IFERROR(INDEX(Changes!C:C, SMALL(IF(INDEX(Student Reference!B:B, MATCH(Changes!B:B, Student Reference!A:A, 0))="张老师", ROW(Changes!B:B)-1), ROW(A1))), "")

最后调整

把公式里的"张老师"换成对应教师的名字,或者直接引用标签页中存放教师姓名的单元格(比如A1单元格),然后下拉所有公式,就能自动同步该教师名下学生的所有离校安排记录。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.16 01:47:20