已命名函式,超方便!

閱讀時間約 10 分鐘
8 月 24 號,Google 試算表一口氣推出了好幾項新功能,有「已命名函式(Named Functions)」、LAMBDA(跟相關函式)、XLOOKUP 還有 XMATCH,讓你在使用 Google 試算表時有更多彈性!(雖然這更新有點追著隔壁 Excel 跑的味道
這次我想介紹的功能叫「已命名函式」。「已命名函式」功能可以讓你設計自己的函式,還可以把它分享給別人使用、更可以把它匯入到其他試算表,化繁為簡,讓你的工作效率大大提升。
舉個例子,我用這個功能設計了一個可以做出 QR Code 的函式
=QRCODE?你這什麼巫術?
如果不用這個功能,你可能得寫這麼長的函式才會得到那張 QR Code:
=IMAGE("https://chart.googleapis.com/chart?" & "chs=" & 300 & "x" & 300 & "&cht=qr&chl=" & ENCODEURL("https://vocus.cc/user/@mrsheet"))
現在變成短短一行了!
更方便的是,你把這個試算表分享給別人編輯的話,對方也能使用這個新函式;也可以用等等介紹的匯入功能,可以直接把新函式「安裝」到別的試算表檔案

使用場景

綜合這些特性,我想到三個「已命名函式」可應用的場景給你參考。
一、讓長函式縮短,變成好管理的短函式
用了「已命名函式」,麻煩的函式只要寫一遍。就算之後要修改編輯,也相對簡單,改好後可以一鍵更新,對現在編輯的試算表生效。
二、讓自創的函式分享給更多人利用
假設你已經出師,寫了一些自創的函式,你不妨可以做一個「已命名函式庫」,開放大家自由利用,他們就可以用你的函式,加速工作效率!他們完全不需要知道你的函式是怎麼寫的,讓技術共享的難度大大降低。
三、帶給試算表世界更多可能性
或許之後有更多神人分享他們設計的函式,開放給大家使用!

我把官方的說明文件放這邊,有興趣的話你可以瞧瞧!我也會實際操作一次,介紹這個新功能給你看。這次會盡可能全面介紹這個新功能,篇幅會有點長,你可以利用左手邊的「章節目錄」跳到你想了解的地方喔。

製作步驟

來製作一個可以更方便抓取方格子追蹤人數的函式好了。如果不用「已命名函式」功能,我們可能得寫:
=IMPORTXML("https://vocus.cc/user/602bf35efd897800019eefb5", "//*[@id='__next']/div[1]/div[4]/div[1]/div[1]/div[2]/div[4]/ul/li[5]/div", "en")
超長!如果可以寫下面一行短短的話,那該有多好。
=方格子個人追蹤("網址")
怎麼做?來看看吧!

一、測試函式運作

首先,打開一個新的試算表,在某個儲存格寫上剛剛那串,先確認函式是否能正常運作:
=IMPORTXML("https://vocus.cc/user/602bf35efd897800019eefb5", "//*[@id='__next']/div[1]/div[4]/div[1]/div[1]/div[2]/div[4]/ul/li[5]/div", "en")
按下 Enter,結果:
(截圖時間:9 月 15 號)
OK,正常!那我們就可以準備把它打包,製作「已命名函式」了。

二、設定「已命名函式」功能

接下來,在工具列點選「資料」>「已命名函式」:
你會到右手邊有一個窗格冒出來:
選取左下角的「新增函式」,之後就會出現「新增已命名函式」的編輯窗格了。
我們一欄一欄看這邊要填什麼東西。
函式名稱:填入這個函式的名字。中英文都可以,輸入英文的話會自動轉成大寫。你可以取「方格子個人追蹤」、「VOCUS_PROFILECOUNT」或是任何方便記憶的名字。取名有幾個限制:
  • 不可以跟 Google 試算表已有的函式撞名
  • 不可以取 TRUE 或 FALSE
  • 不可以用 A1 或 R1C1 語法(像是 A1、B2、RC[-1] 等等)
  • 不可以用數字當開頭
  • 不可以有空格、不可以有特殊字元(底線除外)
  • 名稱長度不能超過 255 個字元
那我們這次就取「方格子個人追蹤」這個名字吧:
函式說明:給使用者看的說明文字,什麼都可以,「取得方格子作者個人檔案頁面的追蹤人數」、「Getting the follower counts on Vocus Profile Page」、「寫完這篇文要去吃熱炒囉」都可以。來輸入一下:
引數預留位置:給使用者輸入資料的預留位置。這邊的「引數」是什麼呢?打個比方,在 VLOOKUP 函式,我們有四個引數要給試算表:
=VLOOKUP(關鍵字, 範圍, 索引, [已排序])

例如:
=VLOOKUP("秋天", A:E, 2, FALSE)
這邊的關鍵字、範圍、索引、已排序就是引數了。
至於引數要寫什麼、又要怎麼寫,取決你想設計的樣子。舉例來說,我們回頭看剛剛寫的那一長串:
=IMPORTXML(
"https://vocus.cc/user/602bf35efd897800019eefb5",
"//*[@id='__next']/div[1]/div[4]/div[1]/div[1]/div[2]/div[4]/ul/li[5]/div",
"en")
IMPORTXML 的函式本來有三個引數,有網址XPath 路徑查詢語言代碼,那麼既然 XPath 路徑查詢和語言代碼都可以是固定不變的值,我希望使用者只要提供網址就好,這麼一來,等等只需要一個「網址」的引數即可。
這邊的引數預留位置可以用中文寫、也可以用英文寫。但是到截稿日為止(9 月 15 號),因為 Google 試算表的 bug 的關係,如果用中文的引數等等會有點問題,所以我先用英文示範。設定引數的限制和剛剛取函式的名稱一樣,別寫錯囉!
我們就先在那個欄位填入「url」、按下 Enter,看起來就會像這樣:
公式定義:定義新函式怎麼運作。我們把剛剛在儲存格寫好的函式複製、貼上去:
把那串 https://... 的網址替換成剛剛定義的「url」:
OK!設定完畢了,回顧一下:

三、提供引數說明

我們快做完了!按下「繼續」,我們進到設計函式的第二步。你會看到這個窗格:
你可以在這進一步提供引數的說明,讓使用者可以了解怎麼使用你設計的函式。舉例來說,希望大家在輸入網址的時候,要記得在網址前後加上雙引號,並提供一個填寫的範例作為參考。那麼,你就可以在這邊的欄位寫:
引數說明:輸入方格子作者個人頁面的網址,前後要有雙引號包覆。
引數範例:"https://vocus.cc/user/602bf35efd897800019eefb5"
像這樣:
按下右下角的建立,就完成囉!
我們來試試看,在隨便一個儲存格寫:
=方格子個人追蹤(
哇,真的變成一個函式啦!剛剛定義的函式說明、引數說明也有好好出現。
我們接著填入網址。假設我們這次來找方格子官方的追蹤數有多少:
"https://vocus.cc/user/5a702897fd89780001f9b44b"
就這樣完成囉!

四、更新或移除函式

如果你要更新已命名函式,一樣可以回到工具列,按「資料」 >「已命名函式」,就會回到剛剛的窗格。函式的右手邊,有三個點的圖案可以點,會出現編輯或移除:
按下編輯的話,就會回到剛剛的步驟,就可以更新函式的設計;按下移除的話,當然就會讓這新函式在試算表上消失囉。

分享試算表給別人時,新函式也可以用嗎?

可以!只要開啟試算表的編輯權限給別人,他們也可以使用你設計的函式喔!按下 Google 試算表畫面右上角的「分享」,新增對方的 Gmail 帳號或群組、設定權限為「編輯者」即可:

新函式怎麼匯入到別的試算表?

先打開你希望匯入的試算表,到工具列 >「資料」>「已命名函式」,出現剛剛的窗格後,按下右下角的「匯入函式」。
這時會出現可以選擇檔案的視窗:
你可以從「我的雲端硬碟」、「與我共同的項目」、「近期存取」搜尋剛剛的檔案。找到了之後,點選檔案,按下「選取」。接下來會再出現這個視窗:
這邊會出現原本的試算表已經有的「已命名函式」,你可以勾選函式左邊的方塊選擇要匯入的函式,或全部匯入。
不過,匯入的時候,你有可能會看到這種訊息:
以這次的例子來說,是因為 IMPORTXML 會匯入外部網站的資料,Google 試算表擔心你的資安,所以顯示這個訊息提醒你。你如果充分了解這函式的風險,可以繼續按「匯入」或「全部匯入」繼續匯入過程(IMPORTXML 只會匯入資料、應該是不會把資料匯出去給別人就是)
這樣就完成囉!你就可以在試算表使用新函式了。
要注意到,這個匯入是一次性的。如果原本的試算表那邊,函式有任何更新,在其他的試算表不會跟著更新喔。

複製試算表的時候,新函式也會過去嗎?

會的!經測試過也沒問題。你可以把含有新函式的試算表,直接複製到你的雲端硬碟,這樣新函式也會跟著過去囉。

最後呢,我想先從自己開始,分享幾個我設計的函式給大家用。歡迎到這個試算表取用,如果你有什麼函式的新點子也歡迎跟我分享,我可以試著設計看看:
如果你喜歡這次的文章,歡迎你透過這些方法支持我:
・按下愛心、按下儲存
・留言告訴我你的想法
・加入喜特先生的官方沙龍,即時看到我發布的教學
・付費訂閱喜特先生的官方沙龍,加入每月小額訂閱方案
・追蹤喜特先生的 Facebook
・按這邊小額贊助我的創作!
想要看更多文章,歡迎來到我的 Notion 頁面找找有沒有你需要的資源喔!
我是喜特先生,Mr. Sheet,我們下個教學見!
avatar-img
14.2K會員
148內容數
簡潔,快速,有效, 讓你的日常生活、工作生產力大提升! ___ 快按「加入」,馬上追蹤所有喜特先生的更新,有 Google 試算表教學、Google Apps Script 的研究、數據分析課程的開箱,還有 Google 試算表疑難雜症的解題分享唷!💪
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
喜特先生官方沙龍 的其他內容
重複的資料好煩啊啊啊啊啊!怎麼把它們清掉呢?三招秀給你看看!傳送門這邊請。
今天來介紹轉置(Transpose),兩招可以讓你輕鬆做好欄列互換 (ノ>ω<)ノ
我用 GOOGLEFINANCE 做了樣版,可以讓你抓股價、找匯率資訊、翻出股票過往的歷史資料,歡迎來看看!
今天要盡力徹底講解 QUERY 的 LIKE,以及實際應用上可以怎麼執行,快快進來 LIKE 一下!
要怎麼無視大小寫,用 QUERY 抓取資料呢?方法其實很簡單,一起看下去吧!
相對參照、絕對參照是新手必定要了解的重要觀念,歡迎來看看瞧瞧唷!
重複的資料好煩啊啊啊啊啊!怎麼把它們清掉呢?三招秀給你看看!傳送門這邊請。
今天來介紹轉置(Transpose),兩招可以讓你輕鬆做好欄列互換 (ノ>ω<)ノ
我用 GOOGLEFINANCE 做了樣版,可以讓你抓股價、找匯率資訊、翻出股票過往的歷史資料,歡迎來看看!
今天要盡力徹底講解 QUERY 的 LIKE,以及實際應用上可以怎麼執行,快快進來 LIKE 一下!
要怎麼無視大小寫,用 QUERY 抓取資料呢?方法其實很簡單,一起看下去吧!
相對參照、絕對參照是新手必定要了解的重要觀念,歡迎來看看瞧瞧唷!
你可能也想看
Google News 追蹤
Thumbnail
微軟的EXCEL又出了一個新函數了【TRANSLATE】,TRANSLATE這個單字翻譯成中文就是翻譯的意思,他的功能就是"翻譯"。 有了這個函數就可以直接在原有資料進行翻譯,不用再把資料丟到Google翻譯或是GPT了。 🔎函數說明 TRANSLATE(要翻譯的內容,原始語言,翻
主要來講宣告函式跟箭頭函式 : 宣告函式(Function Declaration) 語法: function functionName(parameters) { return result; } 特點: 使用 function 關鍵字 函式名稱是必需的 存在函式
Thumbnail
Google Docs 自動化應用情境,自動依 Google Sheets 試算表、Google Forms 表單回覆、Gmail 信件、Webhook、RSS 訂閱內容,建立相應 Google Docs 文件。還可以在新建 Google Docs 文件後,自動發送 Slack 通知給團隊成員!
Thumbnail
本次將為大家介紹,如何用Google表單來自製顧客滿意度調查表 進入Google表單有三個步驟,首先必須先進入Google流覽器的環境 接下來,開啟Gmail信箱,第三個步驟,選擇Google應用程式中的表單功能 再點選應用程式集,在程式集中再點選表單的功能,就會出現表單的編輯畫面 此時要建
Thumbnail
Excel是一個強大的電子試算表軟體,不僅適用於數據分析和報表製作,還能通過VBA(Visual Basic for Applications)進行自動化和擴展功能。要使用這些進階功能,首先需要啟用開發人員選項。以下將詳細介紹在Windows和Mac版本的Excel中如何啟用這個選項。 在Wi
Thumbnail
在 Google Sheets 中,SPARKLINE 函數提供了一個方便的方法來創建迷你圖表,讓你可以輕鬆地視覺化數據。這些迷你圖表可以是折線圖、柱狀圖或其他類型,並且可以在單個儲存格中顯示。本教學將向你展示如何使用 SPARKLINE 函數來創建迷你圖表,讓你能夠快速而直觀地理解你的數據。
Thumbnail
在數位化時代,傳統表單設計方式已無法滿足現代的需求。Tally 的出現,讓我們重新思考表單設計的可能性。無論是問卷調查還是數據收集,Tally 都將讓你感受到從未有過的便捷和效率。它結合了簡潔的設計與強大的功能,讓你可以輕鬆設計出專業和高效的問卷。現在,讓我們一起來體驗 Tally 的魅力吧!
Thumbnail
今天紀錄的是因應工作需要而學習的小技能。 我想達到的目標:當欄位裡面出現「寄出」這個關鍵字的時候整欄變色,以辨別該項目的狀態。
Thumbnail
對於許多企業而言,試算表是日常業務和決策過程中不可或缺的工具。它們被用於各種目的,從財務預算和盈虧分析到庫存管理和客戶數據記錄。然而,隨著業務的發展和數據量的增加,許多人會發現自己面臨著試算表管理和維護的挑戰,這些挑戰可能妨礙效率、準確性和生產力。 1. 數據管理的繁瑣性 試算表中數據的輸入
Thumbnail
新的一年來臨,我期望重新檢視我的財務報表,讓自己更輕鬆的管理財務。我希望有一張預算編列表,然後利用這些表格來審視我的預算與到時候實際的收支狀況。我發現許多財務相關的apps都無法滿足我的需求。所以,我親手製作了一個包含預算和實際支出的表格,最後將這兩者合併成一個統一的表格。
Thumbnail
微軟的EXCEL又出了一個新函數了【TRANSLATE】,TRANSLATE這個單字翻譯成中文就是翻譯的意思,他的功能就是"翻譯"。 有了這個函數就可以直接在原有資料進行翻譯,不用再把資料丟到Google翻譯或是GPT了。 🔎函數說明 TRANSLATE(要翻譯的內容,原始語言,翻
主要來講宣告函式跟箭頭函式 : 宣告函式(Function Declaration) 語法: function functionName(parameters) { return result; } 特點: 使用 function 關鍵字 函式名稱是必需的 存在函式
Thumbnail
Google Docs 自動化應用情境,自動依 Google Sheets 試算表、Google Forms 表單回覆、Gmail 信件、Webhook、RSS 訂閱內容,建立相應 Google Docs 文件。還可以在新建 Google Docs 文件後,自動發送 Slack 通知給團隊成員!
Thumbnail
本次將為大家介紹,如何用Google表單來自製顧客滿意度調查表 進入Google表單有三個步驟,首先必須先進入Google流覽器的環境 接下來,開啟Gmail信箱,第三個步驟,選擇Google應用程式中的表單功能 再點選應用程式集,在程式集中再點選表單的功能,就會出現表單的編輯畫面 此時要建
Thumbnail
Excel是一個強大的電子試算表軟體,不僅適用於數據分析和報表製作,還能通過VBA(Visual Basic for Applications)進行自動化和擴展功能。要使用這些進階功能,首先需要啟用開發人員選項。以下將詳細介紹在Windows和Mac版本的Excel中如何啟用這個選項。 在Wi
Thumbnail
在 Google Sheets 中,SPARKLINE 函數提供了一個方便的方法來創建迷你圖表,讓你可以輕鬆地視覺化數據。這些迷你圖表可以是折線圖、柱狀圖或其他類型,並且可以在單個儲存格中顯示。本教學將向你展示如何使用 SPARKLINE 函數來創建迷你圖表,讓你能夠快速而直觀地理解你的數據。
Thumbnail
在數位化時代,傳統表單設計方式已無法滿足現代的需求。Tally 的出現,讓我們重新思考表單設計的可能性。無論是問卷調查還是數據收集,Tally 都將讓你感受到從未有過的便捷和效率。它結合了簡潔的設計與強大的功能,讓你可以輕鬆設計出專業和高效的問卷。現在,讓我們一起來體驗 Tally 的魅力吧!
Thumbnail
今天紀錄的是因應工作需要而學習的小技能。 我想達到的目標:當欄位裡面出現「寄出」這個關鍵字的時候整欄變色,以辨別該項目的狀態。
Thumbnail
對於許多企業而言,試算表是日常業務和決策過程中不可或缺的工具。它們被用於各種目的,從財務預算和盈虧分析到庫存管理和客戶數據記錄。然而,隨著業務的發展和數據量的增加,許多人會發現自己面臨著試算表管理和維護的挑戰,這些挑戰可能妨礙效率、準確性和生產力。 1. 數據管理的繁瑣性 試算表中數據的輸入
Thumbnail
新的一年來臨,我期望重新檢視我的財務報表,讓自己更輕鬆的管理財務。我希望有一張預算編列表,然後利用這些表格來審視我的預算與到時候實際的收支狀況。我發現許多財務相關的apps都無法滿足我的需求。所以,我親手製作了一個包含預算和實際支出的表格,最後將這兩者合併成一個統一的表格。