首页 文章

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

提问于
浏览
0

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

我正在使用Excel 2007 .

谢谢

1 回答

  • 2

    我想你基本上描述了 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)
    

    如果您需要创建额外的sheet3,请使用以下命令:

    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中最后使用的行 . 如果你应该进一步复制它,所以你不必担心它一段时间,你可能需要对空单元格进行防错 .

相关问题