自动将匹配列的行复制到其他工作表

自动将匹配列的行复制到其他工作表

现在我有一个名为sheet1像图像左侧的工作表在此处输入图片描述

我想自动将所有sheet1具有列C=的行复制NO到工作表sheet2(如图片右侧所示)。每次我插入sheet1具有C列 =的新行时NO,它都会自动更新sheet2,索引列E会自动增加。

谁能帮我?

答案1

这听起来像是数据透视表的工作,但您需要行标题。

首先,设置一个动态命名范围,它将捕获您的列表A:C并随之增长。为此,请单击功能Name Manager区中的Formulas。单击New,为其命名(我将其命名为rngPivotData),并将其用于其“引用:”公式:

=OFFSET(Sheet1!$A$1,0,0,MATCH(9E+99,Sheet1!$A:$A),3)

屏幕截图 1

接下来,通过单击单元格E1然后单击Pivot Table功能区来添加数据透视表Insert

屏幕截图 2

当它询问您要使用的表或范围时,请键入您为动态命名范围选择的名称。

屏幕截图 3

右键单击数据透视表中的某处,然后单击“数据透视表选项...”。在Display选项卡中,选中“经典数据透视表布局”。这将有助于提供您想要的外观。

屏幕截图 4

将所有三个标题拖到Row Labels数据透视表窗格的部分,然后筛选Yes/No仅包含那些的字段No屏幕截图 6

这是最终产品。任何时候您要进行更改,只需在数据透视表中的任意位置单击鼠标右键,然后单击 即可Refresh屏幕截图 6

答案2

由于我没有 Excel 2007,因此我将尽力描述该过程。

在 Sheet2 中,将所有数据与 Sheet1 中的对应数据相等,如下所示:

在此处输入图片描述

Excel Web App 不允许在排序时在标题上使用公式,因此我手动输入了名称;但在 Excel 2003 中,我没有遇到这个特殊问题。将该公式扩展到数据范围的最后一行(或无穷大)。现在你有相同的两张表中的数据,但您可以在单独的表中进行筛选而不改变其他工作表。

选择 A 和 B 列,然后点击Data > Filter。标题上会出现一些箭头按钮。按下 Type 标题上的按钮,然后选择“NO”选项仅有的。最终结果是这样的:

在此处输入图片描述

作为参考我使用了来源。

以下是一种“古老”的做法,我之前只是记得它,它对某些人来说很有价值。


我基于高级过滤来自微软的教程。有些术语可能错误(误译),因为我没有英文版本。

最终设置

这是我的最终设置,它采用的是葡萄牙语版本的 Excel 2003。从左到右,数据范围(A 和 B)、条件范围(C 和 D)和过滤结果(E 和 F),以及高级过滤对话框的图像。由于 Office 2007 上的新 GUI,这将略有不同。

首先,您需要为每一列创建一个标题。它看起来应该像这样。

然后,转到Data > Advanced Filter。应该会出现一个菜单,询问您的操作和所需的数据范围、条件范围和复制位置。选择“复制到其他地方”作为操作

您的数据范围就是您的数据。在您的例子中,这将是$A:$C

您的条件范围是您设置要选择数据的条件的范围。为此,请创建一个 C 类型的附件标题和下方NO

复制范围是您希望过滤结果所在的位置。只需选择左上角的单元格即可。

按“确定”后,您现在有了一个排序表。但是,此过程不是自动的 - 您必须在添加新数据时执行此操作。

相关内容