根据不同表的具有相同索引的行自动填充表行#

根据不同表的具有相同索引的行自动填充表行#

我在一个工作表/tab1 上有一个包含多行和多列的填充表。

我想在 tab2 上创建一个新表,其中包含相同的列和一个询问“修改是/否”问题的新列。如果用户对第 10 行回答“是”,他将自己填写该行。如果他回答“否”,则该行将自动填充来自 tab2 中的行(具有相同索引号)的值,该行包含多个列。一般来说,使用宏或 Excel 365 可以做到这一点吗?

答案1

是的,但不是以我认为您期望的方式。

您要做的是使用引用源数据的公式填充所有适当的单元格,以便获得完全匹配的源数据。

不需要任何列供用户输入“是”或“否”。但是,如果主管要查看辅助表中的数据并标记要用手动输入的数据替换的行,这可能会很有用。

因此,假设您的数据位于名为“tab1”的工作表上。在行的第一列单元格中,可能是 A 列,您将有一个基本的=tab1!A1。它将收集来自 tab1 的 A1 单元格的数据并将其放入 tab2 上的 A1 单元格中。您将公式复制到 B1 中,然后按如下方式编辑 B1 中的公式。编辑后,将其复制到右侧以填充所有需要的列。设置第一行后,您将复制所有使用的单元格,然后根据需要向下粘贴。

B1 中的公式将变成:

=IF(ISFORMULA($A1),tab1!B1,"")

这将测试 tab2 的单元格 A1 中是否存在公式。如果存在公式,它将查找 tab1 的单元格 B1,并将该值作为其值。如果没有公式,它将在单元格中留空。

为什么?因为如果某一行不需要手动输入,则 A 列单元格及其结果中会有一个公式。右侧的所有单元格都会看到有一个公式,并从 tab1 中提取自己的值。

但是,如果用户在 A 列单元格中输入公式,公式就会消失。右侧的所有单元格将立即显示为空白。这样,用户就知道要继续输入所有数据。即使用户跳过某个单元格,该单元格仍将保持空白,并将该空白传递给查看该单元格的其他任何公式。

如果除了启用此功能之外还需要“是/否”列,比如主管要求,只需将其设为 A 列,并让保存数据公式的单元格在每一行的该列单元格中测试“是”。如果为 TRUE,则显示空白,如果为 FALSE,则显示结果=tab1!D233(或任何单元格)。

此外,一旦辅助选项卡上的数据永远处于静态,它将永远不会改变,您可以复制它并使用粘贴|特殊|值将其从公式更改为纯文本,就像编辑的行一样。如果需要。

相关内容