【问题标题】:How to import data from one sheet to another如何将数据从一张表导入到另一张表
【发布时间】:2011-04-12 12:12:59
【问题描述】:

我在 Excel 中有两个不同的工作表,所有第 1 行单元格中的标题相同(a1 = id,b1 = 名称,c1 = 价格)。我的问题是,有没有办法将数据(如名称)从一个工作表导入另一个工作表中的“id”相同的工作表。

eg.
sheet 1                             sheet2
ID      Name       Price            ID        Name        Price
xyz     Bag        20               abc                     15
abc     jacket     15               xyz                     20

那么有没有办法在表 1 中添加“名称”和表 2 中的“名称”,其中表 1 中的“ID”=表 2 中的“ID”?

当然不用应付和粘贴 谢谢

【问题讨论】:

    标签: excel worksheet-function vlookup


    【解决方案1】:

    VLookup

    您可以使用简单的 VLOOKUP 公式来完成。我已将数据放在同一张表中,但您也可以参考不同的工作表。对于价格列,只需将最后一个值从 2 更改为 3,因为您正在引用矩阵“A2:C4”的第三列。

    外部参考

    要引用相同工作簿的单元格,请使用以下模式:

    <Sheetname>!<Cell>
    

    示例:

    Table1!A1
    

    要引用不同工作簿的单元格,请使用以下模式:

    [<Workbook_name>]<Sheetname>!<Cell>
    

    示例:

    [MyWorkbook]Table1!A1
    

    【讨论】:

    • 投反对票?为什么?一个解释会很好,否则我不知道如何改进我的答案。
    • 但是你看到我输入的数据顺序不一样(我有像 100168、101584 这样的“ID”)而且它们到处都是,它们的顺序不同床单。这就是为什么我需要查找“ID”相同的地方......而且我也不是那个顺便投下反对票的人。感谢您提供的帮助:)
    • @Niall:这正是 VLOOKUP 所做的。我本可以更改第二张表中的顺序。抱歉,我应该说清楚的。
    • @das_weezul:被否决的是 “我稍后会提供答案” 版本。现在答案很有用,我把它变成了 +1。
    • @DarkDust:感谢和抱歉,我只是想在处理屏幕截图时为 Niall 指出正确的方向;)
    【解决方案2】:

    在寻找其他东西时看到了这个帖子,我知道它已经很老了,但我想加我的 2 美分。

    切勿使用 VLOOKUP。它是 excel 中性能最差的公式之一。请改用索引匹配。它甚至可以在不对数据进行排序的情况下工作,除非您在匹配公式的末尾有 -1 或 1(下面将详细解释)

    这里是一个link,带有适当的公式。

    Sheet 2 公式如下: =IF(A2="","",INDEX(Sheet1!B:B,MATCH($A2,Sheet1!$A:$A,0)))

    • IF(A2="","",表示如果A2为空,则返回一个空值
    • INDEX(Sheet1!B:B, 是说 INDEX B:B 其中 B:B 是您要返回的数据。即名称列。
    • Match(A2, 是说匹配 A2,这是您要为其返回名称的 ID。
    • Sheet1!A:A,表示您要将 A2 与上一张表中的 ID 列匹配
    • ,0)) 指定您想要一个精确值。 0 表示返回与 A2 完全匹配,-1 表示返回大于或等于 A2 的最小值,1 表示返回小于或等于 A2 的最大值。请记住 -1 和 1 必须排序。

    有关Index/Match 公式的更多信息

    其他有趣的事实:$ 表示公式中的绝对值。因此,如果您在向下或向上填写公式时指定 $B$1,则保持相同的值。如果您超过 $B1,则 B 在整个公式中保持不变,但如果您填写,则 1 会随着行数的增加而增加。同样,如果你使用 B$1,向右填充会增加 B,但保留第 1 行的引用。

    我还在第二部分中包含了间接的使用。间接的作用是允许您在公式中使用另一个单元格的文本。由于我创建了一个命名范围 sheet1!A:A = ID、sheet1!B:B = Name 和 sheet1!C:C=Price,我可以使用列名来获得完全相同的公式,但它使用列标题更改搜索条件。

    祝你好运!希望这会有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-09-09
      • 2021-05-23
      • 1970-01-01
      • 1970-01-01
      • 2023-03-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多