如何在Excel同一行中查找另一列中的值?

如何在Excel同一行中查找另一列中的值?

我的 Excel 数据有 2 列。工作表中的数据如下所示。

ColumnA   ColumnB
A       | Data of A
B       | Something
C       | Some text
D       | Test Data
E       | Data of E

我想知道当我向 columnA 输入值时如何设置 columnB 的值。例如,如果我输入了新行并且输入 columnA = D,那么 columnB 的值将自动为 =“测试数据”,但如果我的输入之前从未找到过,则它不会执行任何操作。

答案1

我认为您在 B2 中想要的(以及下面的复制)是:

IF(
   ISNA(
        MATCH(A2, A$1:A1, 0)
       ),
   "",
   VLOOKUP(A2, A$1:B1, 2, FALSE)
  )

如果之前没有与 A2 匹配的项,匹配将返回 #NA,因此 ISNA 将返回 TRUE,所以 IF 将产生第一个值“”,或者不产生任何值。

如果有先前的匹配,MATCH 将不会返回 #NA,因此 ISNA 将返回 FALSE,因此 IF 将产生查找。VLOOKUP 将查找 A 值与 A2 完全匹配的行并返回第二列中的值。

答案2

我认为 moe37x3 打错了一些字,试试这个公式(moes 只检查了单元格 a1 中的匹配项,而他的 vlookup 中没有结果部分

IF(
       ISNA(
            MATCH(A2, A$1:A1, 0)
           ),
       "",
       VLOOKUP(A2, A$1:B1, 2, FALSE)
      )

相关内容