在我的工作簿中的第一个工作表上,我有一个包含多个列和行(大约1000行和20列)的大表.
我想知道是否可以根据主表中其中一列的条件在工作簿中的另一个工作表中显示该表的一部分.
为了帮助解释这一点,我将使用实际工作簿中的示例.
在工作表1(称为通用员工信息,即主表)上,在A列中,每一行都有一个唯一的编号,用于标识员工(每个员工都有自己的ID号).
B栏保存其办公地点(市/市).C栏保存办公室所在的州.D栏每年保存其工资金额.
此类员工信息还有多个列,无需进一步说明.
我的问题是,我可以在工作簿中标记工作表2并使该工作"New York State"表显示与工作表1(所有相同的列)相同的所有信息,但只显示在纽约州工作的员工吗?
然后标记另一张纸"California",并且只有那些在加利福尼亚州工作的员工等等......换句话说,每个州都有一张单独的纸张.
它实际上就像使用State列过滤主表以仅显示一个状态,但我希望将结果放在单独的表中,而不是过滤包含所有信息的主表.
我想在每个新表中使用数据透视表,但我不确定这是正确的方法.
这可能吗?我希望我能清楚地解释这个问题.
tod*_*tle 15
如果您使用Excel 2013或更高版本作为起点,我真的建议使用Excel表格功能.表摇滚有很多原因,包括使您的表格对用户更具可读性,并且为INDEX/MATCH之类的内容制定公式更不容易出错.
一旦表与主数据到位,对于子集我使用数据建模功能链接回那些表.
这些步骤
此时,您可以使用数据切片进行子集,隐藏列,在表的右边缘或左边缘插入带有新公式的新列等.
您必须使用工具栏上的"全部刷新"按钮单独刷新它.
您在这里尝试执行的操作有多种:http://www.get-digital-help.com/2009/09/28/extract-all-rows-from-a-range-that-meet-criteria -Excel 中的一列/
如果您的所有数据都在 Sheet1 上,并且您定义了一个范围 (CTRL F3),其中包含所有名为 [tbl] 的元素,请在 Sheet2 中的单元格 A1 中输入您要搜索的列号 Sheet1 在 Sheet2 中的单元格 B1 中输入搜索条件(即,您要筛选的州)从单元格 A2 到 Z1000(例如)输入以下数组公式(因此使用 CTRL SHIFT RETURN 输入)
=INDEX(tbl, SMALL(IF((INDEX(tbl, , $A$1, 1)=$B$1), ROW(tbl)-MIN(ROW(tbl))+1, ""), ROWS(A2:$A$2)), , 1)
Run Code Online (Sandbox Code Playgroud)
执行过程中需要注意的一个关键点是首先为第一行创建数组,然后按 CTRL SHIFT RETURN 创建它,然后向下拖动它。以错误的顺序执行此操作将无法正确增加函数末尾的行计数器。只需按照本文开头链接中的说明进行操作,您就应该得到它。