如何將一個Excel表格裡面的多個工作表中相同名稱對應的數據匯總?
有很多種方法,公式,VBA,Power Query,多搜索。
不知道你想實現的是不是如下案例的
上面的1,2,3,4,5,代表每個工作表的名稱,下面的人名代表每個工作表中的人員名稱,我們現在實現把不同工作表中相同人名的數據匯總到一起
情景一、不同sheet人員位置相同數據匯總
1、在B2單元格輸入如下公式,然後向右向下填充即可
=INDIRECT(B$1"!B"ROW())
然後選擇工作表1的數據和上面對比下,提取的數據是正確的
公式解釋:
INDIRECT(B$1"!B"ROW()) 代表返回工作表1的B2單元格的內容
上面我們看到的每個工段人員的行數位置是一致的,如果位置出現不一致,那要怎麼辦?
情景二、不同sheet人員位置不相同數據匯總
此時我們需要更改B2的公式為:
=VLOOKUP($A2,INDIRECT(B$1"!A:B"),2,0)
當另一個工作表內的工段順序和匯總表不一致的時候,仍然可以正確的匯總出來
公式解釋:
INDIRECT函數返回不同工作表內的A:B列數據,然後使用Vlookup查找對應的數值
更多內容可以添加關注學習哦~~
用vlookup公式!
如果你有兩個表,且兩個表中又有不完全相同的欄位,也就是兩個表的欄位有交集,比如:A表中有:姓名,年齡,身高,體重。B表中有:姓名,性別,班級,年級,科目,成績。可知AB兩表都有「姓名」這個欄位,圖片如下:
表A
表B
我想在表B後加上年齡信息,操作如下
點擊確定,並下拉G列單元格填充即可,展示如下
---------------------分割線-------------------
有知友問跨表怎麼辦,為了更直觀的回答這個問題,更新下,其實跨表也是同理,只不過取值範圍需要調整到對應的表格中的位置,比如,sheet3裡面有:姓名、職級等欄位。sheet4裡面有:姓名、手機號等欄位。
sheet3:
sheet3 sheet4:
sheet4 想知道員工的職級,需要去sheet3中選取值
公式如下:
=VLOOKUP(B3,Sheet3!A:B,2,0),註:因為職級欄位在第二列,所以是2,想要知道基本工資,就填3,以此類推。
結果如下:
![]()
參考一下,下面兩個案例是不是你題中的意思。
案例一
圖中是指有一張公司人員表,裡面有三個部門,想把各部門人匯總到一起(圖一到圖二的改變)。
![]()
這時候在powerquery頁面,找到「自定義列」輸入以下自定義公式 =Table.Group(更改的類型1,"部門",{"合併",each Text.Combine([姓名],"/")}) ,就可以得到圖二的結果了。
案例二
在處理數據時,有時可能需要將列與列進行合併,這個時候我們只需要用到一個簡單的合併函數Text.Combine就可以輕鬆實現。
下面的數據中我們需要把[品牌]和[商品名稱]列進行合併,並用「-」作為分隔符號。
在添加列下點擊「自定義列」,之後我們輸入函數公式Text.Combine輸入將要進行合併的列,把需要合併的欄位全部放在{}中並用逗號分隔開,最後在雙引號內輸入自定義的分隔符號「-」,就可以獲得一列新的合併列啦。
![]()
如果這兩個案例並不是你需要的結果,可以給我私信哦~~~
如果熟悉vba就用vba,這樣下次可以繼續用代碼
推薦閱讀:
※新手必會的八個Excel技巧,個個實用
※如何更快匯總兩百個表格的數據?
※怎樣全面系統的學習excel表格?
※八個懶人專用Excel技巧
TAG:MicrosoftExcel | Excel公式 | Excel使用 | Excel技巧 | 電子表格 |