2012-03-07 196 views
0
之間

可能重複跳過列:
Copy column from one Excel sheet to another Excel sheet複製列從一個Excel工作表到另一個,在

我在我的Excel文件5張。在這5箇中,一個是主表單,它具有我想要複製到其他4張表單的所有數據。 所有表都有一個共同的列,ID。主人有超過10000個ID。

我想要做的是:

如果ID在主片Sheet 1中= 24356 = ID然後從主片複製X,Y,Z的列到Sheet。這對所有其他工作表都是一樣的。

另外,由於主紙張來自其他紙張以外的其他來源,因此其格式不同。有沒有辦法在運行復制/粘貼之前刪除表單中的所有格式?

任何人都可以請告訴我這個VBA代碼。

這是我的主表如下:

enter image description here

我想另一片(如表Sheet1)在這種情況下看起來像:

enter image description here

此外,雖然搜索主表單,代碼是否可以查看錶單的最後一列?

+0

我想你可以使用'VLOOKUP'和ID來得到你需要的結果。不需要VBA。 – 2012-03-07 19:59:20

+0

@Remnant:我嘗試使用這一點,但它的給我「類型不匹配的錯誤」 子數據() 昏暗結果作爲字符串 昏暗片作爲工作表 昏暗Sheet 1中作爲工作表 設置片= ActiveWorkbook.Sheets(「FMed 「) Set sheet1 = ActiveWorkbook.Sheets(」Workingtest「) result = Application.WorksheetFunction.VLookup(sheet.Range(」C:C「),sheet1.Range(」A:D「),1,False) End Sub – Nupur 2012-03-07 20:04:49

+0

@Remnant:有超過10,000個ID。這會非常耗時地在每個單元格中輸入vlookup。另外,我嘗試了vlookup,它正在做的是將colA複製到colA,ColB到ColB etcc。正如在上面的問題,兩個Excel表單具有相同的列標題,但他們在不同的列。我不知道如何解決在vlookup或VBA? – Nupur 2012-03-07 20:07:54

回答

2

Nupur

這裏是非VBA的方式。

假設您的主數據位於名爲Master的工作表上,數據範圍爲A1:H9。現在假設我有Sheet1,其ID範圍爲A2:A5

1 ID Name Type Question1 Type3 Type4 
2 475 
3 479 
4 501 
5 503 

然後在細胞B2Sheet1我有以下的檢索NameID=475

=VLOOKUP($A2,Master!$A$2:$H$9,2,0) //returns f1 

要爲ID=475獲得Type我用:

=VLOOKUP($A2,Master!$A$2:$H$9,3,0) //returns adm1 

所有我做的是在Master上設置對數據表的引用(注意絕對引用$符號),使用ID作爲查找值,然後更改列值(VLOOKUP中的第3個輸入)以檢索相關值。

一旦你設置好了第一行,你就可以複製下來並獲得正確的數據。

這是否解決了這個問題?

+0

@ Remnant:感謝您的回覆 – Nupur 2012-03-09 17:22:40

+0

+1對於非VBA方法:) – 2012-03-11 11:04:06

相關問題