根据 Excel 中的列值将行拆分到不同的工作表中

根据 Excel 中的列值将行拆分到不同的工作表中
+-----+----------+----------+
|  a  |    b     |    c     |
+-----+----------+----------+
| 101 | 12:13:00 | employee |
| 102 | 12:15:00 | customer |
| 103 | 12:20:00 | employee |
| 102 | 12:16:00 | customer |
| 103 | 18:15:00 | employee |
| 101 | 18:18:00 | customer |
+-----+----------+----------+

如何根据列值自动将行分成不同的工作表

最终得到三张表:

列 a 值 101

+-----+----------+----------+
|  a  |    b     |    c     |
+-----+----------+----------+
| 101 | 12:13:00 | employee |
| 101 | 18:18:00 | customer |
+-----+----------+----------+

列 a 值 102

+-----+----------+----------+
|  a  |    b     |    c     |
+-----+----------+----------+
| 102 | 12:15:00 | customer |
| 102 | 12:16:00 | customer |
+-----+----------+----------+

列 a 值 103

+-----+----------+----------+
|  a  |    b     |    c     |
+-----+----------+----------+
| 103 | 12:20:00 | employee |
| 103 | 18:15:00 | employee |
+-----+----------+----------+

答案1

在此处输入图片描述

怎么运行的:

您需要在 Sheet1 中创建一些辅助列。

写下以下公式并填写:

D2 ==IF($A2=101,1+MAX($D$1:D1),"")

E2 ==IF($A2=102,1+MAX($E$1:E1),"")

F2 ==IF($A2=103,1+MAX($F$1:F1),"")

将以下公式写入Sheet2 的单元格 A2并将此单元格横向和纵向复制:

=IFERROR(INDEX(Sheet1!A:A,MATCH(ROWS($1:1),Sheet1!$D:$D,0)),"")

您将获取 Sheet 1 中 ID 为 101 的所有记录。

笔记,

  • 使用上面的公式ID 102 & 103Sheet3 和 Sheet4稍作修改。
  • 为了ID 102Sheet1!$D:$DSheet1!$E:$E&替换ID 103Sheet1!$F:$F公式中。

根据需要调整公式中的单元格引用。

相关内容