在 Excel 2007 中按条件合并 Excel 工作表/列组



有没有办法组合 2 个 Excel 工作表(或一个 Excel 工作表中的列组),以便一个工作表/组中的行附加到另一个工作表/组,以便某些列值匹配。澄清一下:假设我有 2 张纸 - 工作表 1 和工作表 2。Sheet1 有列 A,B,C,D.SHEET2 有列 A,E,F,G.两个表中的列 A 包含相同的数据,但排序方式不同(它不以常规方式(按字母或数字顺序)排序)。我需要将这 2 张纸合并为一张,但需要将它们组合在一起,以便 A 列中的值匹配(如果可能,结果应以与 Sheet2 相同的方式排序)。理想情况下,我正在寻找的功能需要像SQL的INNER JOIN命令一样。

我正在使用 Excel 2007。

谢谢

我想你基本上描述了VLOOKUP函数。

你有你的两个工作表,现在你想创建一个列表,将A,B,C,D扩展到A,B,C,D,E,F,G。

为此,您可以使用

Sheet1!E1=VLOOKUP(Sheet1!A1,Sheet2!A:G,5,FALSE)
Sheet1!F1=VLOOKUP(Sheet1!A1,Sheet2!A:G,6,FALSE)
Sheet1!G1=VLOOKUP(Sheet1!A1,Sheet2!A:G,7,FALSE)

如果需要创建额外的工作表3,请使用以下命令:

Sheet3!A1=Sheet1!A1
Sheet3!B1=VLOOKUP(Sheet3!A1,Sheet1!A:D,2,FALSE)
Sheet3!C1=VLOOKUP(Sheet3!A1,Sheet1!A:D,3,FALSE)
Sheet3!D1=VLOOKUP(Sheet3!A1,Sheet1!A:D,4,FALSE)
Sheet3!E1=VLOOKUP(Sheet3!A1,Sheet2!A:G,5,FALSE)
Sheet3!F1=VLOOKUP(Sheet3!A1,Sheet2!A:G,6,FALSE)
Sheet3!G1=VLOOKUP(Sheet3!A1,Sheet2!A:G,7,FALSE)

希望这个解释是正确的。

编辑:

顺便说一下,由于 Excel 主要不是用作数据库,因此此操作有点混乱,因为它不会动态缩放。至少使用第二种方法,使用三张纸。您必须至少复制 A1 那么远,以匹配 Sheet1 中最后使用的行。而且,如果您应该进一步复制它,这样您就不必担心一段时间,则可能需要对空单元格进行防错。

相关内容

最新更新