方格精選

IMPORTRANGE 的進階應用(二):結合 QUERY 篩選資料

更新於 發佈於 閱讀時間約 11 分鐘

什麼,IMPORTRANGE 的進階應用還有第二招!

上次我們學到了怎麼用下拉式選單,讓 IMPORTRANGE 切換到不同的目標來匯入資料(還沒看過的話,快來這邊);這次呢,我想把強大的 QUERY 跟 IMPORTRANGE 結合在一起,讓你可以即時處理匯入進來試算表的最新資料,包含選取特定欄位、依特定條件篩選資料、對資料進行加總彙整等等功能!

雖然我不是數學家,但這樣處理資料聽起來很不錯,對吧 (⁰▿⁰)


先來回顧一下

IMPORTRANGE 可以幫你即時更新試算表的資訊,語法也很單純:

=IMPORTRANGE(試算表連結, 要匯入的範圍)

比如說:

=IMPORTRANGE("https://docs.google.com/spreadsheets/d/1MzLjKDb0XVjk_R6Ij84jFFl7z8KNJjJckUGi42Mwr6U", "貓!A:N")

想要完整複習一下 IMPORTRANGE 的用法,歡迎到我之前的教學:IMPORTRANGE,即時同步 Google 試算表的資料! 來看看唷。

不過 IMPORTRANGE 只會把資料匯進來,沒辦法讓我們操作像是加總、調換欄位位置、排序、篩選等處理,這時候該怎麼辦呢?

放心,我們就可以用 QUERY 來為我們代勞,直接利用 QUERY 達成剛剛提到的操作!把 QUERY 跟 IMPORTRANGE 結合在一起,就可以讓 QUERY 讀取 IMPORTRANGE 的資料,再去做之後的處理。

當然,如果你覺得這樣寫太複雜,你也可以先 IMPORTRANGE 到一個工作表,之後再開另外一個工作表使用 QUERY 再處理剛匯入進來的資料,這樣分開處理也沒問題。

QUERY 是什麼?QUERY 是一個可以對大量資料查詢特定資訊,依據特定篩選條件快速回傳儲存格、欄、範圍的函式。歡迎你到過去的文章複習一下唷:

注意事項:

  1. 如果試算表有太多 IMPORTRANGE、或是 IMPORTRANGE 匯入範圍太大,也可能會拖累到 Google 試算表的效能,所以可以斟酌一下 IMPORTRANGE 的使用時機。
  2. 如果你有把大型的資料庫放到試算表上運算或整理的需求,可以考慮用資料連結器連到 BigQuery、再連結到試算表。


怎麼做呢?

把 QUERY 跟 IMPORTRANGE 合體就行了!像這樣:

=QUERY(IMPORTRANGE(試算表連結, 要匯入的範圍), "QUERY 指令")

這麼一來 QUERY 就會讀取 IMPORTRANGE 匯入進來的資料,再透過 QUERY 指令來處理處理囉。

使用方式上只有一件事情要注意,那就是欄位的寫法

在寫 QUERY 的時候,我們會用試算表的欄位字母(A、B、C⋯⋯)、像是:

=QUERY('資料'!A:E, "SELECT A, B, C ...")

但是如果要用到 IMPORTRANGE,就得換個寫法:

=QUERY(IMPORTRANGE(網址, 範圍), "SELECT Col1, Col2, Col3 ...")

你會看到這邊有個新東西叫「Col1」,這個代表 IMPORTRANGE 範圍的第一欄。假如你的 IMPORTRANGE 範圍是 A:F,那麼:

  • Col1 就是 A 欄
  • Col2 就是 B 欄
  • Col3 就是 C 欄
  • ...

又或是如果你的 IMPORTRANGE 範圍是 B:G,那麼

  • Col1 就是 B 欄
  • Col2 就是 C 欄
  • Col3 就是 D 欄
  • ...

另外,Col 的寫法有大小寫之分,C 一定要大寫、ol 也一定要小寫唷!

不過要用數字來表示欄位有點違反人性,所以我這邊附上了字母跟數字的對應表給大家參考(假設 A 欄是第一欄):

raw-image

那我們來一起動手做吧!(*´ω`)人(´ω`*)


練習時間

我們今天要練習 IMPORTRANGE 的資料在這邊,網址是:
https://docs.google.com/spreadsheets/d/1MzLjKDb0XVjk_R6Ij84jFFl7z8KNJjJckUGi42Mwr6U/edit

請先在你自己的雲端硬碟那邊新增一個試算表,用 IMPORTRANGE,在 A1 輸入:

=IMPORTRANGE("https://docs.google.com/spreadsheets/d/1MzLjKDb0XVjk_R6Ij84jFFl7z8KNJjJckUGi42Mwr6U/edit#gid=978955641", "貓!A:N")

如果出現錯誤,需要允許存取的話,按下藍色按鈕就可以囉。執行後應該會看到這樣的畫面:

raw-image


SELECT 特定欄位

我們假如只想要抽取登錄 ID(A)、動物種類(B)、動物品種(C)、動物性別(D)、動物相片網址(I)、收容所名稱(K)、收容所地址(L)、收容所電話(M)的資料,那就可以用 QUERY 的 SELECT 選取上面指定的欄位。像是這樣(記得要換成正確的數字喔!):

=QUERY(
IMPORTRANGE("https://docs.google.com/spreadsheets/d/1MzLjKDb0XVjk_R6Ij84jFFl7z8KNJjJckUGi42Mwr6U/edit#gid=978955641", "貓!A:N"),
"SELECT Col1, Col2, Col3, Col4, Col9, Col11, Col12, Col13")

結果如下:

raw-image

如果 IMPORTRANGE 的資料欄位順序讓我們不方便分析的話,我們也會用 QUERY 來調換順序。例如,我就可以把原本在 I 欄的「動物相片網址」,利用 QUERY 移到最前面:

=QUERY(
IMPORTRANGE("https://docs.google.com/spreadsheets/d/1MzLjKDb0XVjk_R6Ij84jFFl7z8KNJjJckUGi42Mwr6U/edit#gid=978955641", "貓!A:N"),
"SELECT Col9, Col1, Col2, Col3, Col4, Col11, Col12, Col13")
raw-image


SELECT + WHERE

我們如果想找收容所地址位於「桃園市」的資訊,就可以用 QUERY 的 WHERE 來篩選,像是「starts with '桃園市'」就會是個好方法。

假設我們要搜尋的欄位不動,那就在 SELECT 後面加上 WHERE 字句就可以了,像是這樣:

=QUERY(
IMPORTRANGE("https://docs.google.com/spreadsheets/d/1MzLjKDb0XVjk_R6Ij84jFFl7z8KNJjJckUGi42Mwr6U/edit#gid=978955641", "貓!A:N"),
"SELECT Col1, Col2, Col3, Col4, Col9, Col11, Col12, Col13
WHERE Col11 starts with '桃園市'")

這邊當然也要記得換上 Col11,代表原本資料的第 11 欄的位置。執行結果就像這樣:

raw-image


SELECT + GROUP BY

再來最後一個題目!假如我們想得到資料中所有貓咪的數量、並且用動物性別來分的話,該怎麼辦呢?我們可以用 GROUP BY 來操作:

=QUERY(
IMPORTRANGE("https://docs.google.com/spreadsheets/d/1MzLjKDb0XVjk_R6Ij84jFFl7z8KNJjJckUGi42Mwr6U/edit#gid=978955641", "貓!A:N"),
"SELECT Col4, Count(Col1)
GROUP BY Col4")
raw-image

當然,如果你的資料有數字匯總的需求,之前提過的 AVG、SUM、MAX、MIN 也可以搭配 GROUP BY 用上,把欄位字母替代好就好囉!

你如果已經看過我其他介紹過 QUERY 的教學,應該也知道 QUERY 其實有很多可能性。今後你也可以再用 ORDER BY 排序、LIMIT 限制資料筆數、LABEL 更換標題或是其他我們之前學過的 QUERY 指令做出更細緻的資料呈現。


結論

所以你會發現其實操作跟一般的 QUERY 差不多,唯一要注意的就是欄位字母要換成 Col 的形式而已!只要簡單地把 IMPORTRANGE 跟 QUERY 結合,分析的可能性就會多很多,歡迎試試看 ᕕ ( ᐛ ) ᕗ


如果你喜歡這次的文章,歡迎你透過這些方法支持我:
・按下愛心、按下儲存
・留言告訴我你的想法
・加入喜特先生的官方沙龍,即時看到我發布的教學
・付費訂閱喜特先生的官方沙龍,加入每月小額訂閱方案
・追蹤喜特先生的 Facebook
・按這邊小額贊助我的創作!

想要看更多文章,歡迎來到我的 Notion 頁面找找有沒有你需要的資源喔!

我是喜特先生,Mr. Sheet,我們下個教學見!



留言
avatar-img
留言分享你的想法!
Canon  Chow-avatar-img
2025/06/28
想請問一下, 我修改了 '桃園市'改成儲存格, 就出現 #N/A...... =QUERY( IMPORTRANGE("https://docs.google.com/spreadsheets/d/1MzLjKDb0XVjk_R6Ij84jFFl7z8KNJjJckUGi42Mwr6U/edit#gid=978955641", "貓!A:N"), "SELECT Col1, Col2, Col3, Col4, Col9, Col11, Col12, Col13 WHERE Col11 starts with '桃園市'") '桃園市' 可以換成指定的儲存格嗎? 比方是"C4", 而"C4"是下拉式選單. 謝謝指教!
喜特先生 Mr. Sheet -avatar-img
發文者
2025/06/30
Canon Chow 感謝來看我的教學! 跟儲存格互動是可以的喔!恰巧我剛好寫了一個 IMPORTRANGE + 下拉式選單互動的教學,歡迎參考:https://vocus.cc/article/6246d7f8fd89780001961e1a 我猜你的做法應該會像是這樣子,利用 & 字元去和活動的範圍連結就OK了: =QUERY( IMPORTRANGE("https://docs.google.com/spreadsheets/d/1MzLjKDb0XVjk_R6Ij84jFFl7z8KNJjJckUGi42Mwr6U/edit#gid=978955641", "貓!A:N"), "SELECT Col1, Col2, Col3, Col4, Col9, Col11, Col12, Col13 WHERE Col11 starts with '" & A4 & "'")
喜特先生 Mr. Sheet -avatar-img
發文者
2024/04/18
IMPORTRANGE 函式系列文提及了這篇文章,趕快過去看看吧!
avatar-img
喜特先生官方沙龍
20.0K會員
153內容數
簡潔,快速,有效, 讓你的日常生活、工作生產力大提升! ___ 快按「加入」,馬上追蹤所有喜特先生的更新,有 Google 試算表教學、Google Apps Script 的研究、數據分析課程的開箱,還有 Google 試算表疑難雜症的解題分享唷!💪
2025/04/20
請你試著在 Google 試算表的儲存格上打這個,按下 Enter: =WHATTHEFOXSAY() 會有神奇的事情發生喔 ✨
Thumbnail
2025/04/20
請你試著在 Google 試算表的儲存格上打這個,按下 Enter: =WHATTHEFOXSAY() 會有神奇的事情發生喔 ✨
Thumbnail
2024/06/02
上次介紹了 REPLACE 函式,可以用來取代儲存格內的特定文字。其實我們還有一個相似的函式叫 SUBSTITUTE,也有取代的功能,不過當然有一點不一樣的地方!今天會分享語法的範例,還有跟 REPLACE 的差異在哪。一起來看看!
Thumbnail
2024/06/02
上次介紹了 REPLACE 函式,可以用來取代儲存格內的特定文字。其實我們還有一個相似的函式叫 SUBSTITUTE,也有取代的功能,不過當然有一點不一樣的地方!今天會分享語法的範例,還有跟 REPLACE 的差異在哪。一起來看看!
Thumbnail
2024/05/25
這是文字處理基礎函式的第四篇文章,今天要來介紹 REPLACE 函式! REPLACE 可以取代掉儲存格內的文字,今天會分享一下它語法怎麼寫、也有兩個實際應用的案例。一起來看看! REPLACE 語法 REPLACE 的語法長了一點點,有四個參數要設定: =REPLACE(要取代
Thumbnail
2024/05/25
這是文字處理基礎函式的第四篇文章,今天要來介紹 REPLACE 函式! REPLACE 可以取代掉儲存格內的文字,今天會分享一下它語法怎麼寫、也有兩個實際應用的案例。一起來看看! REPLACE 語法 REPLACE 的語法長了一點點,有四個參數要設定: =REPLACE(要取代
Thumbnail
看更多
你可能也想看
Thumbnail
創作者營運專員/經理(Operations Specialist/Manager)將負責對平台成長及收入至關重要的 Partnership 夥伴創作者開發及營運。你將發揮對知識與內容變現、影響力變現的精準判斷力,找到你心中的潛力新星或有聲量的中大型創作者加入 vocus。
Thumbnail
創作者營運專員/經理(Operations Specialist/Manager)將負責對平台成長及收入至關重要的 Partnership 夥伴創作者開發及營運。你將發揮對知識與內容變現、影響力變現的精準判斷力,找到你心中的潛力新星或有聲量的中大型創作者加入 vocus。
Thumbnail
這邊統整了關於 IMPORTRANGE 的一系列文章!IMPORTRANGE 是 Google 試算表裡面相當好用方便的函式,跟內建功能和函式結合,可以讓你更彈性地處理資料。
Thumbnail
這邊統整了關於 IMPORTRANGE 的一系列文章!IMPORTRANGE 是 Google 試算表裡面相當好用方便的函式,跟內建功能和函式結合,可以讓你更彈性地處理資料。
Thumbnail
POWER QUERY取得資料的方式五花八門,使用正確的方式匯入資料,可以讓資料取得與處理事半功倍哦 從表格/範圍 從檔案 從資料夾 從文字檔 從網頁 從GOOGLE SHEET 📌影片教學 直接看影片教學把各種不同抓取資料的方式學起來吧,觀看教學影片前可以
Thumbnail
POWER QUERY取得資料的方式五花八門,使用正確的方式匯入資料,可以讓資料取得與處理事半功倍哦 從表格/範圍 從檔案 從資料夾 從文字檔 從網頁 從GOOGLE SHEET 📌影片教學 直接看影片教學把各種不同抓取資料的方式學起來吧,觀看教學影片前可以
Thumbnail
Google 試算表還有一個花括號 { } 的參照方法,可以參照範圍。學會的話,對處理大量資料有很多好處!我們來看看怎麼用 { } 來處理吃資料吧。
Thumbnail
Google 試算表還有一個花括號 { } 的參照方法,可以參照範圍。學會的話,對處理大量資料有很多好處!我們來看看怎麼用 { } 來處理吃資料吧。
Thumbnail
在今天的這篇教學,我想列舉五種試算表變慢的可能原因、還有相對應的解決方案!如果你遇到這樣的問題,或許這篇教學可以幫你從龜速深淵中拉出來,邁向健康順暢的喜特人生!
Thumbnail
在今天的這篇教學,我想列舉五種試算表變慢的可能原因、還有相對應的解決方案!如果你遇到這樣的問題,或許這篇教學可以幫你從龜速深淵中拉出來,邁向健康順暢的喜特人生!
Thumbnail
連 Google QUERY 官方文件都沒寫的秘密,在這邊公開啦!如果你想提升處理大型資料庫的清理或分析效率,歡迎來參考「SKIPPING」!
Thumbnail
連 Google QUERY 官方文件都沒寫的秘密,在這邊公開啦!如果你想提升處理大型資料庫的清理或分析效率,歡迎來參考「SKIPPING」!
Thumbnail
你知道 SELECT 除了回傳欄位、使用聚集函數外,還可以更進一步做加減乘除喔!這個系列是 QUERY 函式大解析的第六篇文章,如果還不知道什麼是 QUERY 的話,我還是很建議你從第一篇慢慢看、跟著我們的練習實際操作,就會更有概念囉~
Thumbnail
你知道 SELECT 除了回傳欄位、使用聚集函數外,還可以更進一步做加減乘除喔!這個系列是 QUERY 函式大解析的第六篇文章,如果還不知道什麼是 QUERY 的話,我還是很建議你從第一篇慢慢看、跟著我們的練習實際操作,就會更有概念囉~
Thumbnail
如果你的資料會隨著時間增減、需要同步,你或許可以考慮用 Google 試算表的 IMPORTRANGE 來解決你的問題!
Thumbnail
如果你的資料會隨著時間增減、需要同步,你或許可以考慮用 Google 試算表的 IMPORTRANGE 來解決你的問題!
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News