2012-11-15 138 views
0

結合列的Excel表格/組由一個條件是否有辦法至2個的Excel工作表組合(列或羣的一個Excel表內),使得在一個薄板/組的行追加到另一片材/使某些列值匹配。 澄清: 可以說我有2個表 - 工作表Sheet1和sheet2。 Sheet1具有列A,B,C,D。 Sheet2有列A,E,F,G。兩張表中的列A包含相同的數據,但排序不同(不按常規方式(按字母或數字)排序)。我需要這2張合併成一個,但他們需要結合起來,使一列匹配的值(如果可能的結果應該以同樣的方式作爲Sheet2的訂購)。 理想情況下,我需要的功能,將需要像SQL的INNER JOIN命令。在Excel 2007

我使用Excel 2007中

感謝

回答

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) 

如果你需要創建一個額外的工作表Sheet 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中最後一次使用的行。如果你應該進一步複製它,所以你不必擔心它一段時間,你可能需要防止空單元錯誤。

+0

我和你提供的第一個代碼(我不需要一個新的工作表)去,但Excel中引發我一個錯誤(單元格的值變爲#REF)。這個錯誤的原因是什麼? – NDraskovic

+0

我猜測,您可能需要根據您的情況調整公式。你能發佈你實際使用的公式嗎?工作簿的Sheet1和Sheet2有效工作表名稱? – Jook

+0

我調整了公式以適合我的情況。我有一個包含有關客戶信息的Excel文檔。我們需要向這些客戶發送郵件,處理運送的公司需要客戶的地址以按區域對貨物進行分類。爲了保護我們客戶的隱私,我創建了一個僅包含客戶控制號碼和地址的新文件。運輸公司將該文件(訴諸於)歸還2個新欄目。我需要將這些列附加到現有文檔,以便將這兩列的值附加到適當的客戶。 – NDraskovic