问题需求,问题提出:
一个Excel工作簿中有学生表、课程表、成绩表三张工作表,学生表中有学号、姓名、所在系三个字段,课程表中有课程所在系、课程名、课程号三个字段,成绩表中有学号、课程号、成绩三个字段,现在我要建立一个学生成绩表,包括姓名、课程名、成绩三个字段,应该如何建立?
--------------------------
解决方案:
新工作表第一行为表头,姓名、课程名、成绩分别在ABC三列中,A2单元格公式如下:
=学生表!B2
将公式向下复制直到出现0为止。
B2单元格公式:
=VLOOKUP(VLOOKUP(A2,学生表!B$2:C$10000,2,0),课程表!A$2:B$10000,2,0)
将公式向下复制到相应行。
建议在“成绩”前面插入两个辅助列(学号C列、课程号D列)以便索引成绩。
C2单元格公式:
=VLOOKUP(A2,IF({1,0},学生表!B$2:B$10000,学生表!A$2:A$10000),2,0)
将公式向下复制到相应行。
D2单元格公式:
=VLOOKUP(B2,课程表!B$2:C$10000,2,0)
将公式向下复制到相应行。
E2单元格(成绩)公式:
=INDIRECT("成绩表!C"&SUMPRODUCT((成绩表!A$2:A$10000=C2)*(成绩表!B$2:B$10000=D2),成绩表!C$2:C$10000))
将公式向下复制到相应行。
全部数据过来后,可用"复制"->"选择性粘贴"/"数值"将其固定下来。
最后删除CD列即可。