【问题标题】:Excel 2003: Match value in column A with column B, then pull data from column BExcel 2003:将 A 列中的值与 B 列匹配,然后从 B 列中提取数据
【发布时间】:2013-11-12 23:12:48
【问题描述】:

我正在尝试在 Excel 2003 中编写公式。

情况:

A 列对应 B 列。 C 列对应 D 列。 A 列中的多行与 C 列中的单行匹配。

       Column A   Column B          Column C     Column D
  1    1247       ≥ 98.5%        1247         ≥ 98.5%
  2    1250       ≥ 99.9%        1250         ≥ 99.9%
  3    1258       ≥ 99.9%        1258         ≥ 99.9%
  4    1341       ≥ 99%          1341         ≥ 98%
  5    1341       ≥ 99%          1349         ≥ 99%
  6    1349       ≥ 60%          1376         ≥ 99%
  7    1349       ≥ 60%          1644         ≥ 60%

问题

我需要 D 列中的值来替换 B 列中的值。

尝试

  1. 在 A 列中选择一个值
  2. 匹配C列中的这个值
  3. 根据 C 列中的值,从 D 复制数据。
  4. 将数据粘贴到 B 列中。

      =IF(ISERROR(MATCH(A1,$C$1:$C$,)),ERROR,VLOOKUP(A1,$C$1:$D$7,2))
    

当我使用此代码时,会从 D 列中提取不正确的值。 B4 和 B5 应该只从 D4 中提取值。仅限 D5 的 B6 和 B7。

有什么建议吗?

【问题讨论】:

  • 您发现发布的任何内容有用吗?

标签: excel excel-formula excel-2003 vlookup


【解决方案1】:

您的公式中有三个问题:

  1. 第一个查找范围不完整$C$1:$C$,应该是$C$1:$C$7
  2. 您没有使用匹配类型,多余的逗号会留下错误。
  3. 您没有指定查找是完全匹配还是近似匹配。默认情况下,VLOOKUP 使用近似匹配,这就是您得到错误结果的原因。

以下内容应如您所愿:

=IF(ISERROR(MATCH(A1,$C$1:$C$7,0)),ERROR,VLOOKUP(A1,$C$1:$D$7,2,0))

但是,您可以使用IFERROR 缩短公式:

=IFERROR(VLOOKUP(A1, $C:$D, 2, 0), "Error")

如果您必须查看大量值,无论如何都会花费大量时间,所以这就是我删除行限制的原因。 IFERROR 将首先尝试评估VLOOKUP,如果它返回#N/AIFERROR 将返回"Error"。否则,它将从VLOOKUP 返回您要查找的值。

它还应该加快速度,因为 Excel 不必先检查 MATCH,然后评估 VLOOKUP

【讨论】:

    【解决方案2】:

    我测试了你的公式,它有效。我只用$C$1:$C$7, 替换了$C$1:$C$,(你觉得还可以吗?)

    我猜你在工作表中使用了正确的公式,这只是这里的一个错字,因为在尝试输入错误的公式时会弹出错误。

    如果这个假设是正确的,并且错误在其他地方,你能指定从 D 列中提取了哪些不正确的值吗?

    【讨论】:

      【解决方案3】:

      看起来这不会导致您的示例出现问题,但您可能希望指定查找时需要 exact 匹配项。为此,您可以在 MATCHVLOOKUP 公式中添加“,0”。像这样:

      =IF(ISERROR(MATCH(A1,$C$1:$C$7,0)),"ERROR",VLOOKUP(A1,$C$1:$D$7,2,0))
      

      编辑:另外,我认为“错误”应该用引号引起来,因为您似乎希望公式将其作为消息打印出来。 (请注意,如果没有完全匹配要求,原始公式将不会返回此 ERROR,它会找到下一个最接近的结果。)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-03-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-06-05
        • 2021-06-06
        相关资源
        最近更新 更多