如何在Excel工作表中搜索?

我想将数据从2张自动传输到单张组合 . 这意味着我有2个不同的导出表(称为“Te_open”和“Te_closed”),它们包含“问题”列(在不同的位置,总是可以变化) . 我有一张表,它代表了其他两张出口表中数据的概述 . 因此,当我在概览表的单元格A2中有值“Te1”时,我希望Excel在两个导出工作表中搜索值“Te1”,并将与“Te1”相同的行中的值返回但是列“问题”,以便我可以填充我希望有问题类型的单元格B2 . 所以我想我可能需要“MATCH”公式,让excel知道我想在导出表中 Headers “问题”的列中搜索,以填写概述表中的“问题”列 .

我看到的问题是我必须搜索两张纸,我不知道哪一张“Pm1”会出现 . 此外,我不知道将出现“问题”表单的哪一栏 .

你能帮我么?我最好用公式解决问题,而不是宏 . 非常感谢你提前 .

亲切的问候,质疑

回答(1)

2 years ago

要查找其中一个 Headers 为“问题”的工作表中第一列的索引,您可以使用(例如):

=MATCH("Problem",Te_open!$1:$1,0)

假设我们将该公式放在某处的单元格中并命名单元格 open_col . 要在 Te_open 的A列中查找值并从'Problem'列返回相应的值,您可以使用:

=VLOOKUP(A2,Te_open!$A$2:$Z$999,open_col)

请注意,您必须定义搜索范围,以包含您的数据在 Te_open 上可能占用的最大范围 . 如果找到搜索值,这将返回'Problem'列中的相应值,否则它将返回 #N/A . 因此,如果您还设置了一个名为 closed_col 的单元格来获取 Te_closed 表的列索引,您可以执行以下操作:

=IF(ISNA(VLOOKUP(A2,Te_open!$A$2:$Z$999,open_col)),VLOOKUP(A2,Te_closed!$A$2:$Z$999,closed_col),VLOOKUP(A2,Te_open!$A$2:$Z$999,open_col)

如果在那里找到了搜索值,那么从 Te_open 的正确列获得结果,否则它从 Te_closed 的正确列获得结果 . 如果两个工作表都不包含搜索值,它将返回 #N/A .