運用導入外部數(shù)據(jù)結合“編輯OLEDB”查詢中的SQL語句技術,,可以輕而易舉地對不同工作表,,甚至不同工作簿中結構相同的多張數(shù)據(jù)列表進行合并匯總并創(chuàng)建動態(tài)的數(shù)據(jù)透視表,,而不會出現(xiàn)多重合并計算數(shù)據(jù)區(qū)域創(chuàng)建數(shù)據(jù)透視表時只會選擇第一行作為行字段的限制。匯總同一工作簿下的多張數(shù)據(jù)列表記錄圖15-16展示了某公司的“一倉”“二倉”和“三倉”3張數(shù)據(jù)列表,,這些數(shù)據(jù)列表都存放在D盤根目錄下的“倉庫入庫表.xlsx”文件中,。 圖15-16倉庫入庫數(shù)據(jù)列表 下面將對圖15-16中的3張倉庫數(shù)據(jù)列表進行匯總分析,具體操作步驟如下,。步驟1打開D盤根目錄下的“倉庫入庫表.xlsx”文件,,單擊“匯總”工作表標簽,。步驟2重復操作示例15.1的步驟1和步驟2,選取目標文件“倉庫入庫表.xlsx”,,彈出【選擇表格】對話框,。步驟3清空【命令文本】文本框中的內容,輸入以下SQL語句:SELECT'一倉庫'AS倉庫名稱,*FROM[一倉$]UNIONALLSELECT'二倉庫',*FROM[二倉$]UNIONALLSQL語句第一部分“SELECT'一倉庫'AS倉庫名稱,*FROM[一倉$]”表示返回“一倉庫”數(shù)據(jù)列表的所有數(shù)據(jù)記錄,,“一倉庫”作為插入的常量來標記不同的記錄,,然后對這個插入常量構成的字段利用AS別名標識符進行重命名字段名稱,最后通過UNIONALL將每個倉庫的所有記錄整合在一起,,相當于將“一倉”“二倉”和“三倉”3張工作表粘貼到一起,。由于UNIONALL只以第一段的字段標題為基準,因此后面的AS別名可省略,。Excel使用SQL語句在當前工作簿中引用本身的工作表時的引用規(guī)則如下,。Excel工作表中引用時需要將其包含在方括號“[]”內,同時需要在其工作表名稱后面加上“$”符號,,如SELECT*FROM[一倉$],。如果引用工作表中的部分區(qū)域,則可以在“$”符號后面添加區(qū)域限定,。例如,,下面的語句表示引用“一倉”的“A1:E448”區(qū)域。步驟4完成數(shù)據(jù)透視表的創(chuàng)建,、布局和美化后如圖15-17所示,。圖15-17匯總后的數(shù)據(jù)透視表 匯總不同工作簿下的多張數(shù)據(jù)列表記錄圖15-18展示了2018年某集團“華東”“東北”和“京津”3個區(qū)域的銷售數(shù)據(jù)列表,這些數(shù)據(jù)列表都保存在D盤根目錄下的“2018年區(qū)域銷售”文件夾中,。圖15-18區(qū)域銷售數(shù)據(jù)列表示例:編制各區(qū)域銷售統(tǒng)計動態(tài)數(shù)據(jù)列表步驟1打開D盤根目錄下的“2018年區(qū)域銷售”文件夾中的“匯總.xlsx”工作簿,,單擊“匯總”工作表標簽。步驟2重復操作示例15.1的步驟1和2,,選取D盤根目錄下“2018年區(qū)域銷售”文件夾下的目標文件“匯總.xlsx”,彈出【選擇表格】對話框,,單擊【確定】按鈕,,打開【連接屬性】對話框。步驟3清空【命令文本】文本框中的內容,,輸入以下SQL語句,。SELECT'東北'AS區(qū)域,*FROM[D:\2018年區(qū)域銷售\東北地區(qū).xlsx].[東北$]UNIONALLSELECT'華東'AS區(qū)域,*FROM[D:\2018年區(qū)域銷售\華東地區(qū).xlsx].[華東$]UNIONALLSELECT'京津'AS區(qū)域,*FROM[D:\2018年區(qū)域銷售\京津地區(qū).xlsx].[京津$]提示:Excel使用SQL語句在當前工作簿中引用其他工作簿中的工作表時的引用規(guī)則如下。需要在工作表名稱前面加上文件名稱限定,,文件名包含在方括號內,,文件名與工作表之間使用“.”分隔。例如,,下面語句表示引用“D:\2018年區(qū)域銷售\東北地區(qū).xlsx”工作簿的“東北”工作表,。SELECT*FROM[D:\2018年區(qū)域銷售\東北地區(qū).xlsx].[東北$]步驟4完成數(shù)據(jù)透視表的創(chuàng)建,、布局和美化后如圖15-19所示。
|