我有两张从 MySQL 导出的 Excel 表,其中包含关系数据,我需要用相关列中的实际数据替换参考 ID。
例如,在一个表中:
+----------------------------------------+
| ID | Name | ForeignKey1 | ForeignKey2 |
+----------------------------------------+
| 1 | Bob | 1 | 2 |
| 2 | Dave | 2 | 1 |
| 3 | Mary | 3 | 4 |
| 4 | Jane | 4 | 1 |
| etc........
然后在另一个表中,sForeignKey
引用:
+---------------------+
| ID | Name |
+---------------------+
| 1 | Banana |
| 2 | Apple |
| 3 | Cat |
| 4 | Dog |
| etc.......
有没有一种简单的方法可以用 Excel 中的相关数据替换外键,以便我的数据看起来像这样?
+----------------------------------------+
| ID | Name | ForeignKey1 | ForeignKey2 |
+----------------------------------------+
| 1 | Bob | Banana | Apple |
| 2 | Dave | Apple | Banana |
| 3 | Mary | Cat | Dog |
| 4 | Jane | Dog | Banana |
| etc........
答案1
这可以通过 vlookup 公式实现:
=VLOOKUP(Lookup Value , Table, Column, Exact Match or Approximate Match)
- 查找值是寻找的价值桌子例如
A2
桌子是要查找“查找值”的选定列的数组。请注意在此处添加与“查找值”相关的其他列,这些列将用作替换值。
例如,如果您要查找 ID 并想将其替换为名称,请在“查找表”中选择名为“ID”的列和名为“名称”的列。表格公式为:
=NameofSheet!ColumnNameOfID:ColumnNameOfName
柱子是来自的列名桌子显示而不是‘查找值’
在外键列旁边插入一列,在外键 2 列旁边插入一列,然后使用 vlookup 引用第二个表(在下面的屏幕截图中,第二个表从第 I 列开始)
标准语法如下所示:
查找值是您的键,外键 1 是第一列,外键 2 是第二列。表是您的搜索范围,您的第二张表(在下面的屏幕截图中为 I 到 E),您的列是您想要检索的搜索范围的索引。
最后一个值“近似匹配”是一个标志,表示您的搜索关键字是否与您的条件完全匹配。出于上述目的,应将其设置为 false。
=VLOOKUP(C2,$I$2:$J$12,2,FALSE)
将公式拖到新列中。将值复制到外键列上。确保复制并粘贴值,否则您的 vlookup 公式将被粘贴进去。
“I”和“2”前面的 $ 表示即使将范围拖到其他单元格中,该范围也将保持静止,如果您的表格包含动态数据,则这不是理想的选择。或者,您可以删除范围的行限制并使用 $I:$J 作为范围。
如果您有任何问题,请告诉我,我会尽力帮助您。您可以在以下位置找到更多信息 如何在此使用 vlookup。