2025年1月11日 星期六

【Google教學】試算表的query函數中matches與contains的差異



最近使用query函數想要做出類似sql語法的like或是in的功能,用chatgpt找到2個解法。

使用場景建議:

如果您的篩選條件較為簡單,例如只需要檢查某列是否包含一段文字,建議使用 CONTAINS。

如果您需要更精確或複雜的匹配條件(如多個關鍵字、特定格式),建議使用 MATCHES。

我用之前的英文題庫做給大家看。


=QUERY(A:C,"select * where C contains  'act' ")

=QUERY(A:C,"select * where  A MATCHES '(2|3)' ")

=QUERY(A:C,"select * where C MATCHES  '(act|aim)' ")


00:00 1.說明

01:01 2.MATCHES功能

01:55 3.contains功能

02:26 4.兩者差異

02:59 5.contains實作

03:51 6.MATCHES實作

05:09 7.MATCHES跟join配合



英文單字測驗

https://docs.google.com/spreadsheets/d/1KMUUBzi-4sbW2Qrzeoc75PetNbNogJXRoSurz2ChvZM/copy



2025年1月4日 星期六

【Google教學】如何使用chatgpt自動產生簽到表程式



有網友問到,他要用表單產生簽到表,與會人員有分校內及校外,選擇校外時要填寫[服務單位名稱][職稱][簽到人員姓名],選校內只要出現[簽到人員姓名],使用表單時要用區段來解決,問說可不可以在同一頁中顯示,這時候就只能自己寫程式來解決,若您不會寫程式可以透過AI來幫您自動產生程式碼,底下就來說明要如何使用。


1. HTML(前端介面)

2. Google Apps Script(後端處理)

3. 部署

4. 試算表格式


用javascript寫一個簽到表,欄位為[與會人員]下拉可以選擇[校外人員]及[校內人員],點[校外人員],會出現[服務單位名稱][職稱][簽到人員姓名],點[校內人員]只要出現[簽到人員姓名],送出後會將資料寫到試算表.


簽到表範例(請建立複本再使用)

https://docs.google.com/spreadsheets/d/18A1BTslBdW0qR-apBlGtVo3lsP8p-c4wNOktIAahXk4/copy


chatgtp網址

https://chatgpt.com/


1. HTML(前端介面)

2. Google Apps Script(後端處理)

3. 部署

  1. 在 Apps Script 中將專案部署為網頁應用程式(Deploy > New deployment > Web app)。
  2. 設定授權,確保應用程式可以讀寫 Google 試算表。
  3. 獲取部署的 URL,將其分享給使用者。

4. 試算表格式

建立一個名稱為 簽到表 的試算表,欄位為:

簽到時間與會人員類型服務單位名稱職稱簽到人員姓名

功能解說

  1. 動態顯示欄位:根據下拉選單選擇「校外人員」或「校內人員」,動態顯示對應的輸入框。
  2. 資料保存:提交後,使用 Apps Script 將資料寫入 Google 試算表。
  3. 即時反應:表單透過 JavaScript 進行檢查和操作。



2024年12月28日 星期六

【Google教學】如何在陣列函數使用亂數函數(RANDARRAY)

 


一般使用亂數函數會想到用rand,但是這個函數使用在陣列函數時產生的亂數都一樣,這時候我們就可以使用RANDARRAY來解決,RANDARRAY可以產生一個範圍的亂數,使用方式跟陣列公式一樣,可以跟count做搭配來應用,我用英文單字來做範例,產生編號跟亂數是要做題庫自動產生使用(query)。


PS:陣列公式的好處是不會因為使用者新增或刪除儲存格造成公式不見


函數說明

https://support.google.com/docs/answer/9211904?hl=zh-Hant


範例檔案:

https://docs.google.com/spreadsheets/d/1KMUUBzi-4sbW2Qrzeoc75PetNbNogJXRoSurz2ChvZM/copy

英文單字測驗



這段影片教學說明如何在Google試算表中,使用RANDARRAY函數結合陣列公式,產生一組隨機數字序列。傳統的RAND函數在陣列公式中會重複產生相同的亂數, 但RANDARRAY函數則能有效避免此問題,並根據指定的列數和欄數產生不同範圍的隨機數。此方法的優點在於,即使新增或刪除儲存格,公式也能自動更新,避免公式失效,講師以建立英文測驗題庫為例,示範如何運用此函數自動產生題目編號。

2024年12月21日 星期六

【Appsheet教學】如何在產品數量小於10時寄email通知

 


Appsheet可以設定觸發條件,例如庫存量小於10時,寄信通知,底下是問chatgpt操作流程。


要在 AppSheet 中透過 Collaborate & Publish 分享應用程式給另一個人,讓他成為協作者(Collaborator),以下是具體步驟:


步驟 1:打開應用程式設定

  1. 登入你的 AppSheet 帳戶。
  2. 選擇你想要分享的應用程式。
  3. 在左側選單,點擊 Manage(管理)

步驟 2:新增協作者

  1. 前往 Manage > Team(團隊)Collaborate(協作) 區域。
  2. 找到 App Creators(應用程式建立者) 或類似「協作者」的選項。
  3. 點擊 Add Collaborator(新增協作者)

步驟 3:輸入協作者的電子郵件

  1. 輸入你要分享的人的 電子郵件地址
  2. 確保該電子郵件是該人已註冊 AppSheet 帳戶 的信箱。
  3. 點擊 Invite(邀請)Save(保存)

步驟 4:協作者接受邀請

  1. 被邀請者會收到一封來自 AppSheet 的電子郵件,內容包含協作邀請的連結。
  2. 他們需要點擊連結,登入他們的 AppSheet 帳戶,以確認加入協作。

步驟 5:設定協作者權限(選用)

  • 如果你希望該協作者擁有完整的應用程式編輯權限,則無需額外設定。
  • 如果需要限制該協作者的權限,可以根據需求設定安全性規則,避免他們存取敏感資料或進行某些操作。

注意事項

  1. 協作者權限
    • 協作者擁有與你相同的 應用程式編輯權限,可以修改應用設計、資料結構等設定。
  2. 多位協作者
    • 你可以邀請多位協作者,讓他們一起開發與維護應用程式。
  3. 授權需求
    • 若要分享協作功能,應用程式可能需要在 付費版本 下運行。

完成以上步驟後,該協作者將能夠存取並協作你的應用程式,進行修改或優化





2024年12月16日 星期一

如何取得LineBot的Channel access token跟Your user ID

 若您要利用LineBot傳送訊息就需要取得Channel access token跟Your user ID,底下這篇說明要如何取得。

LINE 官方帳號管理頁面

https://tw.linebiz.com/login/

1.登入官方帳號,點選有上角的設定


2.點選左邊的Messaging API
3.點選【啟用Messaging API】
4.點選【提供者】/【同意】
5.確定
6.確定
7.點選下方Line Devlopers
8.點右上角的Console
9.點選左邊您的提供者
10.點選您的Line官方帳號
11.Basic Settings底下就會有Your user ID
12.切換到Messaging API,點選Issue

13.複製Channel access token


2024年12月14日 星期六

【Google教學】如何找到個人LineID並透過試算表GoogleAppsScript自動傳LineBot訊息





有網友反應之前用LineBot找LineID跟他自己產生的不一樣,經過確認透過lineBot產生的LineID只能是同一個LineBot帳號才能用,若您只是要傳給自己,可以到console模式找到,


登入後line official官網帳號/設定/LINE Developers/Console/點選LineBot/

Basic settings/Your user ID


function bestdaylong_bot()

{

  var token="您的LineBot Token"; 

  var userId="要傳送的群組或個人ID";  

  var message="彰化一整天";

  var url = 'https://api.line.me/v2/bot/message/push';

  UrlFetchApp.fetch(url, {

    'headers': {

      'Content-Type': 'application/json; charset=UTF-8',

      'Authorization': 'Bearer ' + token,

    },

    'method': 'post',

    'payload': JSON.stringify({

      'to': userId,

      'messages': [{

        'type': 'text',

        'text': message

      }],

    }),

  });


}


現在申請在LINE 官方帳號管理頁面

https://tw.linebiz.com/login/


範例檔案:(請建立複本再使用)

https://docs.google.com/spreadsheets/d/1zWk2hPXIhKAni-dlY_Wslf_1f42gyxhY8Oc_6OIo0k4/copy

Line Bot 送訊息


相關連結:

【Google教學】如何取得Line群組或個人ID並透過試算表GoogleAppsScript自動傳LineBot訊息

https://www.youtube.com/watch?v=rpzBYsBMSfU


【Google教學】如何申請LineBot並透過試算表GoogleAppsScript自動發訊息

https://www.youtube.com/watch?v=zM_PlN7hamk


2024年12月8日 星期日

【軟體教學】如何免費在mac中執行windows(下載VMware Fusion)



VMware Fusion是一套可以讓您在mac中安裝windows的軟體,現在個人是可以免費使用,要下載要先到註冊,再點選它的下載連結下載,

您在登入後用搜尋找VMware Fusion是找不到相關連結的。


密碼要求:

至少有 8 個字元

一個小寫字母

一個大寫字母

一個數字

一個符號

使用者名稱的任意部分

密碼不能與您前 10 次的密碼相同


記得安裝windows後要再安裝vmware tools才會有所有驅動程式


先註冊登入後再點連結

https://support.broadcom.com/group/ecx/productdownloads?subfamily=VMware+Fusion


參考連結:

https://services.tctc.edu/TDClient/323/InfoTech/KB/ArticleDet?ID=21304

【Google教學】試算表的query函數中matches與contains的差異

最近使用query函數想要做出類似sql語法的like或是in的功能,用chatgpt找到2個解法。 使用場景建議: 如果您的篩選條件較為簡單,例如只需要檢查某列是否包含一段文字,建議使用 CONTAINS。 如果您需要更精確或複雜的匹配條件(如多個關鍵字、特定格式),建議使用 ...