發(fā)布時間:2024-01-24閱讀(19)
Excel跨工作簿提取數(shù)據(jù),如果用函數(shù)來處理,需要將工作簿全部打開,否則函數(shù)不生效。
使用SQL就沒有這個煩惱了,不需要會VBA,效果也是可以的。
下面以兩個工作簿為例子:

在【數(shù)據(jù)提取.xlsx】中提取【數(shù)據(jù)源.xlsx】中的數(shù)據(jù)。
【數(shù)據(jù)源.xlsx中表格是這個樣子的:

打開【數(shù)據(jù)提取.xlsx】工作簿,數(shù)據(jù)---現(xiàn)有鏈接---瀏覽更多,選擇【數(shù)據(jù)源.xlsx】所在的路徑:
選取文件,打開:
選取工作簿中的目標工作表,確定,建立鏈接:
這樣可以將數(shù)據(jù)全部提取過來,可以指定在現(xiàn)有活動工作表的某個位置,或者新建一個工作表:
整表提取數(shù)據(jù),結(jié)果如下:
2、建立條件區(qū)域,編寫SQL語句,提取數(shù)據(jù)。
提取品牌名稱為【豐田】的所有數(shù)據(jù):建立條件區(qū)域,如下圖紅色方框處:
鼠標右鍵--表格--編輯查詢,輸入SQL語句:
輸入SQL語句:
select * from [C:UsersAdministratorDesktop數(shù)據(jù)源.xlsx].[數(shù)據(jù)$]
where 品牌名稱=
(select * from [C:UsersAdministratorDesktop數(shù)據(jù)提取.xlsx].[Sheet1$j1:j2])
(select * from [C:UsersAdministratorDesktop數(shù)據(jù)提取.xlsx].[Sheet1$j1:j2])
提取條件區(qū)域J1:J2中的品牌名稱,也就是豐田;
select * from [C:UsersAdministratorDesktop數(shù)據(jù)源.xlsx].[數(shù)據(jù)$] where
根據(jù)條件【豐田】來提取【數(shù)據(jù)提取.xlsx】中的數(shù)據(jù);結(jié)果如下:
該數(shù)據(jù)提取是動態(tài)的,當【數(shù)據(jù)源.xlsx】中表格數(shù)據(jù)發(fā)生變化,只需右鍵刷新表格皆可更新。
關(guān)閉所有工作簿,打開數(shù)據(jù)源.xlsx】更新一條數(shù)據(jù):
關(guān)閉【數(shù)據(jù)源.xlsx】,保存更改。打開【數(shù)據(jù)提取.xlsx】,右鍵刷新。
自動獲取數(shù)據(jù):
不同條件的選取數(shù)據(jù),需要建立不同的條件區(qū)域(或者直接寫SQL語句,不建立條件區(qū)域),這涉及到是否會使用SQL。
更多條件的數(shù)據(jù)提取,這里不再敘述。
只要掌握SQL(很簡單),自然可以寫出相應(yīng)的SQL語句來達到目的。
歡迎分享轉(zhuǎn)載→http://www.avcorse.com/read-217056.html
Copyright ? 2024 有趣生活 All Rights Reserve吉ICP備19000289號-5 TXT地圖HTML地圖XML地圖