我的情况如下。我有两张表。它们采用特定的格式,如下所示:
1.
| Id-Number | Id-Name |
2.
| Id-Number | Id-Other Value |
我想取“Id-OtherValue”并将其添加到第一张表中的“Id-Name”后面。我考虑这样做:
| Id-Number | Id-Name | (Get "Id-Other Value" from Sheet 2 where Id-Number = Id-Number)
我知道我可以手动复制这些值。但我将来也会遇到这种情况,我想节省一些时间。
有没有办法自动完成这个操作?
答案1
您需要做的就是从 Sheet1 中对 Sheet2 中的数据进行 vLookup。
在 Sheet1 上,您需要“ID-Other-Value”使用以下公式,
=vlookup(A2, Sheet2!A$2:B$4, 2, FALSE)
假设:
- A2 -> 包含 sheet1 中的 ID
- A2 至 B4 -> 包含 A 列中的 ID 和 B 列中的 ID-Other-Value(在 Sheet2 上)
在公式中相应地修改 Sheet2 的范围,然后将其复制粘贴到 Sheet1 中想要填充的所有单元格中。
编辑: 如果 range_lookup(公式中的最后一个参数)为 TRUE,则将对范围(Sheet2)中指定的第一列进行排序。如果 range_lookup 为 FALSE,则无需排序。
答案2
如果工作表 1 的 A 列中的某些 ID 号在工作表 2 的 A 列中不存在,您将得到一个错误值,如果是这样,您可以将 ISERROR 函数与 IF 函数结合使用,这将保护您免受#DIV0 或#VALUE 等错误消息以及由错误公式生成的任何其他错误消息的影响。
IF(ISERROR(vlookup(A2, Sheet2!A$2:B$4, 2, FALSE)),0,vlookup(A2, Sheet2!A$2:B$4, 2, FALSE)) 其中 0 值将是结果而不是错误消息。
在 Excel 2010 中,您可以改用 IFERROR 函数,但如果您与使用早期版本的人共享您的工作,它将不起作用,因此这个旧函数组合将在所有版本中起作用。