Excel多個工作表,不用合併,直接查詢
問題來源
韓老師講過好幾種合併工作表分析數據的方法,包括用SQL語句、數據查詢、合併計算、數據透視表。經常有朋友使用這幾種方法,其中有幾位朋友也曾出現過這樣或那樣的問題。
今天韓老師講一種不用合併工作表,直接可以查詢的方法。
示例數據為員工六個月的業績表:
結果:
關鍵操作
1、新建【查詢】工作表,利用【數據驗證】,在A2單元格生成“姓名”下拉選擇列表。因為1-6月份中6月份的姓名最全,所以序列來自6月份的所有姓名。如下圖:
2、在【查詢】工作表中,選擇【數據】——【自其他來源】——【來自Microsoft Query】,如下圖:
3、在【選擇數據源】對話框中選擇【ExcelFiles】,確定,如下圖:
4、選擇當前EXCEL文件名,確定。如下圖:
5、在【查詢嚮導—選擇列】對話框中,將左側的【可用的表和列】中的“1月”表的列添加到右側【查詢結果中的列】預覽框中,如下圖:
6、在上一步中,假設【查詢嚮導—選擇列】對話框中,將左側的【可用的表和列】預覽框為空,按如下操作:
7、此步默認,點擊【下一步】:
8、此步默認,點擊【下一步】:
9、在跳出的【查詢嚮導—完成】框中如下操作:
10、在跳出的【導入數據】對話框中,選擇【表】,指定查詢數據存放位置的起始單元格,本示例中,查詢結果的起始單元格為A4,然後選擇【屬性】,如下圖:
11、在【連接屬性】對話框的【定義】選項卡下【命令文本】中,填入以下命令:
select * from(select * from [1月$] union all select * from [2月$] union all select * from [3月$] union all select * from [4月$] union all select * from [5月$] union all select * from [6月$] ) where 姓名= ?
(此語句,不要害怕,其實都是重複的select * from [1月$] union all 模式,只改其中的工作表名字,幾個工作表重複幾次,最後一次去掉 union all 。)
如下圖:
12、在【輸入參數值】對話框中,指定參數為“姓名下拉列表”所在單元格,並勾選如圖兩個選項:
13:、最終完成數據導入:
選擇姓名,即出現本文開始的結果動圖。