Vibe Coding — Stage 1 · 用 AI
M1-3

Vibe Coding 實戰課 — Stage 1 · 用 AI

GAS 自動化
入門

AI 幫你寫程式 你只需要說需求

M1-3 3 小時 6 輪循環 帶走自動化

按 → 或空白鍵開始

前情提要

M1-1
AI 聊天做網頁
M1-2
多模態讀懂世界
M1-3
GAS 自動化

M1-1 你學會了跟 AI 聊天做作品
M1-2 你學會了讓 AI 讀圖、讀文件
今天要把這些能力串起來 — 讓程式在背景自動跑

M1-3 ・ 3 小時

本模組你會做出什麼?

從靜態網頁升級成自動跑的系統,再延伸到實體 NFC 入口

LV1 ・ 從 HTML 升級到 Web App
file://my-page.html
王小明
M1-1 做的個人網頁
Apps Script
部署 → Web App
script.google.com/.../exec
王小明
部署完成 ・ 可分享網址

同樣內容,有了正式網址

LV2 ・ 自動跑的訂單系統
Google 表單
姓名 / 品項 / 糖度
onForm
Submit
Sheet ・ 雙分頁
寫入 + 統計
訂單明細
王小明 ・ 奶茶 M
李美玲 ・ 四季春 L
陳大文 ・ 奶茶 M
...共 15 筆
即時統計
奶茶 ×5
四季春 ×3
紅茶 ×2
最後更新 12:34:56

表單一送出,系統自己跑

LV3 ・ 實體入口
NFC
script.google.com/.../exec
王小明
全端工程師
加我 Line
名片
點餐

碰一下,實體 → 雲端

3 小時內,把今天學的 Web App 能力套到三種不同場景。

ROUND 1 · 0:00–0:15

GAS 是什麼
為什麼要學

先看效果 再拆原理

Live Demo — 課程報名自動化

這套系統就是你現在報名 Vibe Coding 用的那一套

1
前台 — 學員填報名表

aipath.cooperation.tw/vibe-coding/

2
後台 — GAS 處理報名資料

script.google.com/d/.../edit

3
資料庫 — Google Sheet 自動累積

docs.google.com/spreadsheets/...

這堂課結束時
你也會做出一套類似的自動化系統

Apps Script Editor 長這樣

script.google.com
</> 編輯器
觸發器
📋 執行項目
⚙️ 專案設定
▼ Code.gs
function myFunction() {
// 把 AI 寫的程式碼貼這裡
SpreadsheetApp.getActiveSheet()
.appendRow(['測試']);
}
左邊四個選單就是你今天會用到的全部功能

三件事讓你不害怕

就是文字編輯器

跟記事本一樣
把程式碼貼進去就好

程式碼不用你寫

AI 寫,你貼
這就是 M1-3
的核心流程

觸發器像設鬧鐘

左側「觸發器」選單
不需要寫程式設定

GAS = Google 內建的自動化工具

0
需要安裝的東西
0
需要花的錢

有 Google 帳號就能用
不用裝任何軟體、不用租伺服器、不用學寫程式

GAS 能操作的 Google 服務

Sheet

讀寫
試算表
自動統計

Form

建立表單
收回覆
觸發動作

Gmail

自動寄信
讀取信件

Calendar

建立行程
時間到
提醒

Drive

管理檔案
自動整理

今天的目標

你做出一個自動化
下課前它會在背景自動跑
拍菜單
AI 建表單
自動統計
同事真的在用

心理建設

等一下你會看到程式碼
不用怕
你需要會的三件事

會貼 — 把 AI 給的程式碼貼進編輯器
會跑 — 按下執行按鈕
會把錯誤丟給 AI — 截圖貼回去讓 AI 修

Round 1 小結

GAS = 你的免費自動化引擎

不用安裝、不用花錢、不用會寫程式
AI 寫 → 你貼 → 設觸發器 → 自動跑

ROUND 2 · 0:15–0:55

個人 GAS 網站
從 M1-1 個人頁加上互動

先看 GAS 能做什麼 再決定你要做什麼

GAS 不只能做個人網頁

M1-1 你做了個人頁,但 GAS 後端能做的事還多得多

會什麼了

M1-1 的 HTML
介紹頁
靜態內容
無後端

能升級什麼

同一份頁面,
加入互動 + 後端
+ 資料收集

升級的路徑

HTML 移植到 GAS
+ 加 CTA 表單
+ 寫入 Sheet

在進實作之前,先看一個真實的 GAS 應用範例

範例:淨零碳管理師模擬考

用 GAS 部署的真實應用,與個人介紹頁性質完全不同

綠色 header
考試識別
題庫顯示
20 題單選
計時
已用時間
即時計分
結果記錄
現場體驗

掃 QR code 進去點點看 — 這整個系統是 GAS 部署的,沒有後端伺服器

解構:這個系統的 GAS 後端做了什麼

題庫管理

Sheet 存題目
隨機抽 20 題
分類標籤

狀態追蹤

計時器
答題進度
已答與未答記錄

判斷邏輯

比對正解
即時計分
顯示對錯

資料記錄

答題記錄
寫 Sheet
分數累積
個人追蹤

四個能力分區,每一區都從 Sheet 讀寫資料。整個系統的後端 = Sheet

啟發:你可以做什麼

相同架構(前端表單 + Sheet 後端)可以套用到很多場景

諮詢預約

日期 + 主題
+ 聯絡方式
寫入 Sheet 回覆

活動報名

姓名 + 人數
+ 場次
名額限制計算

興趣調查

領域 + 程度
+ 想學什麼
分類統計

意見回饋

滿意度
+ 改善建議
累積成資料庫

簽到系統

姓名 + 時間 + 地點
無紙化簽到

... 你想做的

只要符合
「表單收
→ Sheet 存
→ 顯示/通知」
都做得到

第一階段任務

本輪要完成的事

把你的 M1-1 個人頁,搬到 GAS 上部署成網站,
並加上一個你選的 CTA 應用(不限定要是個人介紹頁)

M1-1 HTML
移植到 GAS
加 CTA 表單
串 Sheet

三個步驟,完全交給 AI 引導。你只需要描述要做什麼,AI 負責產出程式碼

Step 1 — 把 M1-1 HTML 移植到 GAS

把這段貼進 AI 對話
請把以下 HTML 部署成 Google Apps Script 網頁

[貼上 M1-1 你做的個人頁完整 HTML]

請給我完整的 Code.gs 和 index.html
告訴我每一步怎麼貼進 GAS Editor、怎麼部署、怎麼拿到網址
AI 會引導你

建立 GAS 專案 → 貼 Code.gs → 建立 index.html → 部署 → 取得網址
不需要你看懂程式碼,AI 會說明每一步在做什麼

Step 2 — 加上你選的 CTA

挑前一張的場景之一,描述給 AI

諮詢預約
prompt

加諮詢預約表單
欄位:日期、主題
姓名、email
提交後顯示已收到

興趣調查
prompt

加興趣調查問卷
三題單選
+ 一個開放問答
提交後感謝頁

活動報名
prompt

加活動報名表單
姓名、人數、場次
限額 50 人

AI 會把 CTA 表單加到你的 HTML 裡,繼續引導你部署

Step 3 — 串 Sheet 收資料

繼續跟 AI 對話
表單送出後,把資料寫進 Google Sheet
請告訴我:
1. 怎麼建立要存資料的 Sheet
2. 怎麼把 Sheet ID 給 GAS
3. 怎麼授權(看到警告畫面該怎麼處理)
4. 怎麼測試表單真的有寫進去
AI 引導四件事

doPost 接送出資料 → SpreadsheetApp 打開 Sheet → appendRow 寫入 → 重新部署 → 學員提交一筆測試

授權那關

第一次部署會看到「未經 Google 驗證」警告 — 因為這是你自己的腳本操作你自己的 Sheet,安全。下一個 Round 會深入討論

換你操作 20 分鐘

個人頁搬上 GAS + 加一個 CTA 表單

1
跟著 Step 1 — 把 M1-1 HTML 交給 AI

照 AI 引導部署,拿到你的 GAS 網址

2
挑一個 CTA 場景 — 用 Step 2 的 prompt 加表單

諮詢預約 / 興趣調查 / 活動報名擇一

3
照 Step 3 串 Sheet — 自己送出一筆測試

送出後打開 Sheet 看資料有沒有進去

完成判準

手機打開你的網址,CTA 送出後 Sheet 多一筆 = 完成

卡住了 — 舉手,或回看 Step 1-3 的 prompt 原句貼給 AI

帶走物驗收 + 班群分享

1
確認你的 GAS 網站可開啟

用手機開一次(不是用你的電腦),確認別人也看得到

2
確認 CTA 表單能提交

自己提交一筆測試資料,確認有寫進 Sheet

3
網址貼到班群

看 3 個同學的 CTA 設計,挑一個你想學的設計或 prompt 寫法

Round 2 小結

你做了什麼:把靜態頁變成有後端的應用

M1-1 的 HTML 是給人看的靜態內容。
Round 2 之後,同一份頁面變成可以收資料、寫 Sheet 的完整應用。
架構(前端表單 → GAS 後端 → Sheet 資料)
今天會在 R4 / R5 繼續用

實作 Tip:看不到執行紀錄的連結?

課堂上 80% 同學會遇到 — 跑完 GAS function,「執行紀錄」沒印出 Form URL。
通常是 AI 忘了加 Logger.log。再下一道指令叫 AI 補就好

給 AI 的補救 PROMPT
我剛剛跑完你給我的 code,
但 GAS 的執行紀錄沒看到表單連結,
也沒看到 Sheet 連結。

請幫我修改 code,
讓我下次跑完之後,執行紀錄會印出兩個網址:
1. Google 表單的網址
2. 試算表 (Sheet) 的網址
改完之後

再跑一次 → GAS 編輯器左側「執行項目」點進去 → 看「紀錄」分頁 → 表單網址 + Sheet 網址 兩個都印出來

同樣狀況:看不到資料的值 / 不知道 code 跑到哪一步
解法都一樣 — 叫 AI「在執行紀錄印出 OO」,AI 會自動加上程式碼

ROUND 3 · 0:55–1:15

學別人的 prompt
建你自己的 prompt 助手

把 R2 的經驗,固化成可重複使用的工具

從同學作品中可以學三件事

R2 大家做完之後,回頭看 prompt 怎麼寫的

寫法結構

同學怎麼開頭、
怎麼分段、
怎麼下需求

用詞精確度

「加表單」vs
「加意見回饋表單
+欄位規格」
差別在 AI
產出品質

補充細節
的時機

什麼時候
該一次給全部?
何時分段對話?

R2 大家用同一個 AI,但 prompt 寫法不同 → 產出差距很大。差距來自 prompt 結構

為什麼建 GAS prompt 專用助手

GAS 相關需求有共同骨架,可以固化成範本

環境

Editor 與部署環境
哪些 API 可用

服務

SpreadsheetApp
MailApp
HtmlService
UrlFetchApp

觸發

doGet / doPost
觸發器 / 排程

授權

Scopes 設定
第一次授權流程

錯誤處理

try / catch
執行記錄 / Logger

五個槽位。GAS prompt 助手 = 自動帶這五個槽位的範本生成器

操作:打開 Gemini,建一個 Gem

1
打開 Gemini → Gems 管理員

左下角「Explore Gems」→「New Gem」

2
命名「GAS 助手」

命名清楚,之後在 Gem 列表找得到

3
貼入 Instructions

下一張提供範本,可以直接複製

4
儲存 + 開始對話

未來所有 GAS 需求都在這個 Gem 裡問

Gem Instructions 範本

複製貼上即可使用
你是 Google Apps Script 教學助手,協助無程式背景的學員。

當學員提出 GAS 需求時,你的回答必須涵蓋:

1. 用到的 Google 服務(SpreadsheetApp / MailApp / 等)
2. 觸發方式(doGet / doPost / 觸發器 / 手動執行)
3. 完整可貼上的 Code.gs 程式碼
4. 如果有 HTML,給完整的 index.html
5. 部署步驟(每一步說明)
6. 第一次授權的處理方式
7. 如何驗證有跑成功

回答時用繁體中文,每段加上「為什麼」的說明。
不要假設學員會看程式碼,每個關鍵變數都加註解。

這個 Instructions 把 R3-2 的五個槽位變成自動規範。未來每次問 GAS,輸出格式都一致

換你操作 10 分鐘

建好你自己的「GAS 助手」Gem

1
Gemini → Explore Gems → New Gem

命名「GAS 助手」,之後在列表找得到

2
貼入上一頁的 Instructions 範本,儲存

整段複製貼上就好,不用改

3
問它一句「幫我做表單寫 Sheet」

看輸出有沒有照五個槽位走

完成判準

Gem 的回答帶齊程式碼 + 部署步驟 + 授權說明 = 建好了

卡住了 — 舉手,或回看前兩頁的步驟與範本

對比:用 Gem 助手 vs 直接問

同一個需求,輸出差異一目瞭然

直接問 Gemini

「幫我做表單寫 Sheet」

→ 給一段 code
→ 沒講授權
→ 沒講部署
→ 沒講驗證

用 GAS 助手 Gem

「幫我做表單寫 Sheet」

→ 完整 Code.gs + index.html
→ 授權說明
→ 部署步驟
→ 驗證方式
→ 每段為什麼

差別不是 AI 變聰明,是你把規格固化進 Instructions。每次都不用重新講一遍

Round 3 小結

你的個人 prompt 生產線

R2 你跑過一次完整流程,知道 GAS 需要哪些東西。
R3 把這份「知道」固化成 Gem 助手,未來每次需求都自動帶完整規格
這個方法不只用在 GAS — 任何重複出現的需求類型,都可以建專屬 Gem

ROUND 2 · 0:15–0:35

拍一張菜單
AI 變成表單

一張照片 + 兩步 AI = 可用的系統

選一個素材開始

用手機拍一張你身邊的實體素材,AI 幫你變成數位表單

飲料店
菜單

團購表單
品項+冰塊
甜度+數量
最實用

便當店
菜單

午餐表單
主菜+配菜
白飯/糙米
每天用

Pizza
傳單

聚餐投票
口味+大小
數量
選擇救星

咖啡廳
黑板

下午茶
表單
手寫字辨識
OCR 挑戰

公司紙本
簽到表

簽到表單
姓名+部門
時間
無紙化

活動海報
/傳單

報名表單
姓名+人數
場次
素材也能用

Step 1 — 讓 AI 讀懂菜單

丟給 AI 的指令
這是一張飲料店菜單
辨識所有品項、價格、可選規格
整理成結構化清單
結果

AI 回傳乾淨的結構化資料
品名、價格、冰塊選項、甜度選項 — 全部辨識完成

10x
AI 讀圖比你手打快

Step 2 — AI 寫 GAS 建表單

接續上一步,告訴 AI
根據這份清單
寫一個 GAS,自動建立 Google Form
標題「XX 飲料團購單」
每個品項是一個區塊
包含數量和規格選項

AI 會回傳一整段程式碼
你不需要讀懂,只需要貼進 Apps Script Editor

Step 3 — 貼進去、授權、執行

1
開啟 Apps Script Editor

script.google.com → 新專案

2
全選 → 貼上 AI 的程式碼

取代預設的空白函式

3
按「執行」→ 授權

第一次執行需要允許程式操作你的 Google 服務

4
去 Google Drive 找表單

表單已經自動建好了

授權畫面看起來很可怕?

你看到的警告

「這個應用程式未經驗證」
「可能不安全」
紅色警告文字

實際情況

這是你帳號裡的腳本
但程式碼來源是 AI
授權前要先看權限範圍

記住

先用測試表單 / 測試 Sheet
不要放敏感資料
看到 Gmail / Drive 全域權限先停下來問老師

換你操作 10 分鐘

拍你的素材 → 讓 AI 建出表單

1
拍素材照片丟給 AI — 用 Step 1 的指令

拿到品項、價格、規格的結構化清單

2
用 Step 2 的指令叫 AI 寫 GAS

整段程式碼貼進 Apps Script Editor

3
按執行 → 完成授權 → 去 Drive 找表單

打開表單,對照原菜單檢查選項

完成判準

Google Drive 出現 AI 建好的表單,打開能填 = 完成

卡住了 — 舉手,或回看 Step 1 / Step 2 的指令原句

把連結丟到班群

大家真的來點飲料
一張照片
AI 讀懂
AI 寫碼
可用的表單

全程不到 10 分鐘
你做的第一個自動化工具,馬上有人用

串了兩個 AI 能力

M1-2 多模態

OCR + 結構化
讓 AI 讀懂
實體世界

M1-3 自動化

GAS 建表單
程式代替人工

兩步 AI → 一個成果 →「用 AI 串起流程」的雛形

Round 2 常見問題

!
手寫菜單辨識率低

有些字讀錯 → AI OCR 不是 100%,要人工檢查

!
AI 的 GAS 跑出 error

不急 — Round 4 專門教除錯

!
表單選項跟原菜單對不上

AI 辨識結果要人工核對

概念引出

OCR + 自動化

紙本和數位世界的橋樑
數位化的第一步

授權
Authorization

程式操作你的
Google 服務
需要你的許可

Round 2 小結

一張照片就能啟動自動化

AI 讀圖(M1-2)+ AI 寫碼(M1-3)
兩步串接,從紙本到數位表單不到 10 分鐘

ROUND 3 · 0:35–0:55

逐步加需求
看 AI 怎麼長出系統

no-code 精神:你說 → AI 寫 → 你驗證
每加一個需求,就回 GAS 看 AI 怎麼套用

no-code 的循環

在 Prompt
加一個需求
AI 給你
新版程式碼
貼進 GAS
看 AI 怎麼寫
執行 + 看 Sheet
驗證結果
本輪重點

不是教你怎麼點 GAS 的選單
是教你怎麼讓 AI 一步一步長出完整系統

Step 1 — 第一版需求

跟 AI 說
幫我寫一個 GAS
讀取我這個 Google Form 的回覆
統計每個品項的訂購數量
回 GAS 看什麼

AI 給你的程式碼貼進 Apps Script
觀察它怎麼用 SpreadsheetApp 讀 Sheet 的欄位
不用看懂每一行,看「它讀了哪一欄、寫到哪一欄」

Step 2 — 加上「自動」這個需求

繼續跟 AI 說
很好
現在我希望表單一收到新回覆
就自動執行這段統計
不用我手動點
回 GAS 看什麼

AI 會教你到「觸發器」頁面新增一個 onFormSubmit
你照做,看到觸發器列表多了一筆
這就是「鬧鐘」被裝上了

Step 3 — 加上「時間紀錄」這個需求

再加一個
每次統計時,順便加上時間戳
讓我知道是什麼時候更新的
回 GAS 看什麼

AI 在統計程式裡多加了一行 new Date()
填到 Sheet 的某一欄
你重新貼程式碼,再執行一次

Step 4 — 完整跑一次驗證

填一次表單
觸發器自動執行
Sheet 多了統計
時間戳自動填
no-code 的成果驗證

你沒寫一行程式碼
但透過三次「加需求 → 看 AI 寫 → 驗證套用」
長出了一套有觸發器、有統計、有時間戳的完整系統

換你操作 10 分鐘

三次加需求 → 長出自動統計系統

1
用 Step 1 的 prompt 要統計程式

貼進 GAS,手動執行一次

2
加「自動」需求 — 照 AI 指示裝觸發器

觸發器列表要多出一筆 onFormSubmit

3
加時間戳 → 填一筆表單驗證

看整條流程自己跑完

完成判準

填一筆表單,Sheet 自動多出統計 + 時間戳 = 完成

卡住了 — 舉手,或回看 Step 1-3 的 prompt 原句

自動化三要素

觸發條件

什麼事件啟動程式
表單提交 / 時間到
新資料

執行邏輯

程式要做什麼
統計、寄信
搬資料

確認機制

怎麼知道它有跑
執行記錄
結果驗證

三要素齊全 = 一個完整的自動化系統

Round 3 常見問題

觸發器設了但沒效果

「它真的有跑嗎?」
設了之後不知道怎麼確認

解法:看執行記錄

Apps Script → 左側「執行項目」
每次觸發都有紀錄
成功/失敗一目了然

注意:欄位名稱對不上

常見情境
Sheet 的欄位叫「您想喝什麼?」
但 AI 寫的程式碼找的是「品項」
→ 找不到欄位 → 報錯
解法

AI 不知道你的 Sheet 長什麼樣
把 Sheet 的欄位名稱截圖或列出來告訴 AI

學會看執行記錄

1
Apps Script 左側 →「執行項目」

所有執行紀錄都在這裡

2
綠色 = 成功,紅色 = 失敗

點開可以看到詳細的錯誤訊息

3
確認觸發時間是否正確

每次表單提交都應該有一筆紀錄

Round 3 小結 — 你拼出了什麼

Step 1
表單接 Sheet
+
Step 2
AI 寫統計程式
+
Step 3
觸發器
+
Step 4
驗證

= 第一個完整自動化系統上線

四個 Step 拼起來才算完整
少一個都跑不起來,這就是「系統」的概念

ROUND 4 · 0:55–1:15

三步除錯法
Error 不是失敗

R3 過程中你一定遇過紅字錯誤
這 20 分鐘把處理錯誤的肌肉練起來

R3 你大概遇過這些

找不到欄位

AI 寫的欄位名
跟你 Sheet
不一樣

權限不夠

第一次執行
沒同意授權

函式名打錯

用了不存在的
API 名稱
(幻覺)

這些錯誤不需要避免 — 遇到才有機會學會處理
下一頁學三步除錯法,把它變成你的反射動作

三步除錯法

Step 1 — 看

看錯誤訊息
截圖保留完整畫面

Step 2 — 丟

把截圖丟給 AI
「跑出來的錯誤
請幫我修」

Step 3 — 貼

AI 給修正版
貼回去再跑一次

來回 2-3 次就能修好

Error
複製執行記錄
貼給 AI
貼修正版回 GAS
你不需要看懂程式碼
你只需要會「複製貼上」

你不需要看懂程式碼

不需要做的事
  • 在程式碼裡找第幾行
  • 看懂 TypeError 是什麼
  • 判斷哪一個變數錯了
你只要做的事
  • 把執行記錄整段複製
  • 貼給 AI
  • 說「幫我修」

執行記錄在哪裡複製

Apps Script — 執行項目
編輯器
觸發器
① 點這裡
專案設定
❌ 失敗
TypeError: Cannot read properties of undefined
at myFunction (Code.gs:12:18)
at __GS_INTERNAL_top_function...
② 整段選起來複製(Cmd+A → Cmd+C)

貼給 AI 的格式

直接複製貼上
這是執行記錄,幫我修

[把整段執行記錄貼這裡]
為什麼這樣就夠

執行記錄裡已經有 AI 需要的全部資訊
錯誤類型、出錯位置、相關程式碼
你不需要當翻譯,AI 自己看得懂

進階:在 prompt 裡預先要求好除錯資訊

在每個需求 prompt 後面加這句
請在程式裡加上 Logger.log
記錄每個關鍵步驟的執行狀態
方便我看執行記錄追蹤問題
效果

執行記錄會自動印出每一步做了什麼
出錯時你不只看到錯誤,還看到「錯之前發生了什麼」
下次貼給 AI,它修得更準

Error-driven Development

錯誤不是失敗
是進步的訊號
專業工程師也是這樣工作的

寫程式 → 跑 → 報錯 → 修 → 再跑
差別只在描述錯誤和修復的速度

換你操作 10 分鐘

拿你的錯誤跑一次三步除錯法

1
找一個你 R3 遇到的紅字錯誤

沒有的話,把程式裡的欄位名改錯製造一個

2
執行記錄整段複製,貼給 AI

用前頁格式:「這是執行記錄,幫我修」

3
把 AI 的修正版貼回 GAS,再跑一次

還是紅的就把新紀錄再貼回去

完成判準

原本報錯的程式重跑變綠色成功 = 打通

卡住了 — 舉手,或回看「貼給 AI 的格式」那一頁

Round 4 關卡 — 你打通了嗎

看到錯誤訊息不再慌

知道紅字是訊號,不是失敗

會把行數和關鍵字告訴 AI

不再說「程式壞了,幫我修」

R3 遇到的錯誤至少修好一個

親手跑過一次「看 → 丟 → 貼」的循環

三項都打勾 = 你打通了

從現在開始,遇到任何 Error
都不會卡住你 — 進入 Round 5

ROUND 5 · 1:15–1:35

三平台
寫 GAS 比較

同一個任務問三個 AI
看哪一個的回答方式最適合你的習慣

操作:同一個需求 三個平台

統一需求
Sheet 有新資料時
自動統計各品項的數量
把結果寫到統計表
ChatGPT
Claude
Gemini

分別把同一段需求貼到三個 AI
比較回傳的 GAS 程式碼

換你操作 10 分鐘

把同一段需求貼進三個平台

1
複製上一頁的統一需求

分別貼到 ChatGPT / Claude / Gemini

2
比較三份回答

註解多寡、步驟完整度、對話順不順

3
挑你最看得懂的一份,貼進 GAS 跑看看

能不能跑、統計對不對

完成判準

說得出「我會選哪個平台、為什麼」= 完成

卡住了 — 舉手,或回看上一頁的統一需求

三平台 GAS 輸出的常見差異

Gemini

跟 Google
生態整合
但也常搞錯指令
實測才知道

Claude

附詳細中文註解
程式結構清晰
適合學習理解

ChatGPT

給完整可跑版本
包含錯誤處理
直接貼就能用

這只是常見傾向,不是絕對
同一題你問三次可能拿到三種答案

怎麼選 — 看你自己的習慣

你比較在意 可能適合的方向
看懂程式碼在做什麼 找註解詳細的那個
貼了就能跑,不想改 找完整度高的那個
來回問細節都耐心回 找對話順暢的那個

「最適合」沒有標準答案 — 親自跑過才知道哪個對你的胃口

注意:AI 幻覺

實際案例

Claude 偶爾用到不存在的 GAS API
函式名稱看起來很像,但 Google 根本沒有這個功能

回扣 M1-1

AI 會「一本正經地胡說八道」
這就是 M1-1 提過的 AI 風險 — 幻覺
程式碼也會有幻覺,不只是文字

怎麼驗證 AI 寫的程式碼

1
跑看看

能跑 ≠ 正確,但不能跑 = 一定有問題

2
看結果

Sheet 裡的統計數字對不對

3
換一個 AI 覆查

把程式碼給另一個 AI 看 —「這段有沒有問題」

概念引出

不是「哪個 AI 最強」
是「這個任務哪個 AI 最適合」

M1-1 學了指令技巧 → M1-3 加上工具選擇
指令品質 + 工具選擇 = 更好的產出

Round 5 小結

選對工具比選最強工具重要

三個平台都會有幻覺、都會搞錯指令
差別在「誰的回答方式適合你的工作習慣」
選對工具不靠別人推薦,靠自己實測

表單會跑了,門面呢

現在 ・ Google 表單原生頁
docs.google.com/forms/d/e/…/viewform
課堂訂飲料
表單說明(未填寫)
姓名 *
飲料品項 ▼

能用,但一眼就是表單工具

加一頁 HTML ・ 訂購 landing page
file:///Users/…/index.html
50嵐 飲料團購
今天下午一起訂 — 填完表單就算數
15:00 收單
嵌入的 Google 表單
姓名 *
飲料品項 ▼

有店名、有截止時間,像一個訂購網站

功能一樣 體驗差一個檔次

操作:請 AI 生一個訂購頁

把這段貼給 AI(換上你的表單連結)
幫我做一個飲料訂購網頁,全部只要一個 HTML 檔

我已經有 Google 表單,連結是:<你的表單連結>

1. 頁面上方放店名大標「XX 飲料團購」
   加一句訂購說明,和截止時間「今天 15:00 收單」
2. 下方用 iframe 嵌入這個表單
   連結請改成表單的 embedded 內嵌版
3. 配色溫暖,手機打開也要正常顯示
4. 存成 index.html 之後,雙擊就能直接打開

AI 會回一整包 HTML — 跟 GAS 一樣,不用讀懂
複製全部 → 貼到記事本 → 另存新檔叫 index.html

成品:雙擊就打開的訂購頁

file:///Users/你的名字/Desktop/index.html
50嵐 飲料團購
今天下午一起訂 — 選好品項、糖冰,送出就算數
截止時間 15:00
iframe ・ 嵌入的 Google 表單
姓名 *
飲料品項 ▼ 奶茶(M $50 / L $60)
糖度 ◯ 無糖 ◯ 微糖 ◯ 半糖
提交
看網址列

file:// 開頭 = 這一頁只存在你的電腦裡
表單照收、統計照跑 — 但門面還沒上網(先記住這件事)

換你操作 10 分鐘

給你的表單一個門面

1
複製上一頁的 prompt

把「你的表單連結」換成你 R2 建好的表單網址

2
把 AI 的 HTML 存成 index.html

複製全部 → 記事本貼上 → 另存新檔 index.html

3
雙擊打開 — 直接填一筆試試

順手檢查:手機開不跑版、表單沒被切一半

完成判準

雙擊打開,看到自己的表單嵌在頁面裡 = 完成

卡住了 — 舉手,或回看前頁 prompt
表單連結要用「傳送」裡的內嵌版

收今天的成果:一套完整的訂購系統

表單會收單
+
Sheet 自動統計
+
門面拿得出手

功能會跑 + 門面漂亮 = 產品的樣子

從一張菜單開始
你今天親手把它變成一套會自己跑的系統

ROUND 6 · 1:35–1:45

回顧
銜接下一堂

盤點收穫 看見下一步

六維度自評

自動化完整度
觸發→執行→結果
三要素是否齊全
觸發可靠度
觸發器是否穩定
每次都有跑
除錯效率
幾輪來回修好
描述精準度
程式碼理解度
不用看懂全部
知道大概在做什麼
實用性
做出來的東西
真的有人在用嗎
總體效果
從零到自動化
花了多少時間

今天做到了什麼

V
一張照片變成數位表單

OCR + GAS,紙本到數位不到 10 分鐘

V
觸發器讓程式自動跑

表單提交 → 自動統計 → Sheet 更新

V
學會三步除錯法

看 → 丟 → 貼,Error 不再可怕

V
知道不同 AI 的強項

GAS 場景選 Gemini,想看懂選 Claude

V
給系統一個門面

AI 生 index.html,表單嵌進漂亮的訂購頁

GAS 做到了 但也有邊界

已經能做的

建表單
統計資料
觸發自動化
嵌進本機 HTML 門面
在 Google 生態內運作

還不能做的

做對外的網頁
串接 AI API
發 Telegram 通知
讓外部使用者互動

下一堂會用:doGet() 可以做網頁

GAS 有一個隱藏功能
function doGet() {
  return HtmlService.createHtmlOutput("Hello!");
}

→ 部署後你會拿到一個公開網址
→ 任何人都能打開
M1-4 預告

下一堂會用 doGet() 做一個真正的網頁
有網址、有介面 — 你的門面就不用只待在電腦裡

下一堂會用:GAS 串外部 API

GAS
AI API
智慧回覆
GAS
Telegram API
自動通知
M1-4 預告

GAS + AI API + Telegram = 你的第一個對外服務
有網頁、有 AI、有通知

故事線延續

一張飲料菜單
團購表單
自動統計
自動統計
HTML 門面
M1-4:通知老闆去買

每一堂都在同一個專案上疊加新能力
飲料團購系統會越來越完整

帶走清單

本堂定位 第一次嘗試串流程 + 跨系統的觀念

不只學了什麼,是想法怎麼變了
從「我補流程的洞」→ 流程開始替我分工

從「重複做就忍一下」
重複就是系統訊號
從「資料先手打吧」
現場也能長出流程
從「我得盯著更新」
事件可以自己接手
從「錯了只能重做」
錯誤是可追的路徑
從「哪個平台都行」
平台決定流程形狀
從「只是省點時間」
自動化改寫分工

M1-3 注意事項總覽

# 常見問題 學到什麼
1手寫菜單 AI 辨識率低OCR 要人工核對
2授權畫面嚇人授權 = 允許程式操作帳號
3觸發器設了不知道有沒有跑確認機制(執行記錄)
4AI 程式碼貼進去報 error三步除錯法
5Claude 用到不存在的 GAS API幻覺 + 工具選場景
6網頁裡的表單沒顯示或跑版iframe 要用「傳送」的內嵌連結

NEXT UP

M1-4
GAS 串接 API + 網頁 + TG Bot

你的第一個對外服務 — 有網頁、有 AI、有通知

doGet() 做網頁 串 AI API Telegram 通知

AI 幫你寫程式
你只需要說需求

一張菜單 → 團購表單 → 自動統計 → 漂亮門面 → 下一堂加通知

M1-3 完成

1 / 93
章節