從系統匯出的資料,常常有看不見的空格、寫法不同的日期,還有好幾個欄位擠在同一格的備註。遇到這種表,我的第一個念頭是丟給 AI,不過先想一下哪些工作交給函式比較穩,哪些才值得問 AI 助理。
這篇不綁定單一函式,講的是怎麼分工,還有哪些資料不該貼給外部的 AI 服務。
圖:先問規則寫不寫得出來,再問能不能把資料給 AI,最後一定回到函式。
一份髒資料
我拿茶飲店匯出的訂單當例子,A 欄是品項,B 欄是日期(匯出時是文字),C 欄是備註:
| 列 | A 品項 | B 日期 | C 備註 |
|---|---|---|---|
| 2 | 蘋果紅茶 | 2026/10/05 | 數量:3 冰度:微冰 |
| 3 | 蘋果 綠茶 | 2026-10-07 | 數量:12 冰度:去冰 |
| 4 | 青茶 | 2026/10/9 | 數量:8 冰度:正常冰 |
A2 前面有一個全形空格,A3 中間有兩個半形空格,A4 結尾有一個半形空格,眼睛看不出來,但 XLOOKUP、COUNTIF 都會當成不一樣的字。B 欄三種寫法,C 欄兩個資料擠在一起。
規則固定的,交給函式
清理的時候,如果我講得出一條不會變的規則,就寫成函式。同樣的輸入永遠得到同樣的結果,新資料貼進來也會自動處理,要檢查也看得到公式。每個函式的完整用法在各自的文章,這裡只示範這份資料用到的部分。
空格用 TRIM 搭配 SUBSTITUTE。TRIM 會去掉前後空格、把中間連續的空格縮成一個,但不認得全形空格,所以先用 SUBSTITUTE 換成半形:
全形空格換成半形空格,再整理前後與中間的空格
=TRIM(SUBSTITUTE(A2, CHAR(12288), " "))A2 會得到 蘋果紅茶,A4 得到 青茶。A3 得到 蘋果 綠茶,兩個空格縮成一個,字中間還留著一個,要不要拿掉就看你的規則。詳細說明在 整理文字資料。
日期文字轉成真正的日期用 DATEVALUE:
把 B2 的日期文字轉成日期序號
=DATEVALUE(B2)把儲存格格式改成「格式」>「數值」>「數字」,B2 到 B4 會依序得到 46300、46302、46304,這是日期序號,改回日期格式就是 2026 年 10 月 5 日、7 日、9 日。三種寫法都轉得過來,不過不同寫法能不能辨認,要看試算表的地區設定。日期的細節在 日期與時間入門。
備註拆成兩格用 SPLIT:
用空格把備註拆成兩格
=SPLIT(C2, " ")C2 會拆成兩格,數量:3 和 冰度:微冰。只想留下數量的數字,用 REGEXREPLACE 把整串換成括號抓到的部分:
只留下數量冒號後面的數字
=REGEXREPLACE(C2, "^數量:(\d+) .*$", "$1")C2 得到 3,C3 得到 12,C4 得到 8。這個結果是文字,要拿去加總的話外面再包 VALUE。正規表示式怎麼讀,可以看 REGEX 與 AI 協作指南。
規則還沒想清楚的,問 AI 助理
有些狀況是我知道資料不對,卻說不出規則是什麼。這種時候我才會問 AI 助理(ChatGPT、Claude、Gemini 這類對話工具),而且請它做的是幫我寫公式、解釋規則,不是請它直接改我的資料。
我常問的有三種:
- 請它寫公式。附上欄位說明、三五筆樣本、想要的結果,寫法見 用 AI 幫你寫公式。
- 請它解釋一條看不懂的規則,例如貼上上面那條
REGEXREPLACE,問它每一段在比對什麼。 - 請它列出可能漏掉的情況,例如「這條公式遇到沒有數量的備註會怎樣?」
問的時候我會把樣本寫得像這樣:
試算表 C 欄是備註,格式像「數量:3 冰度:微冰」。請寫一個 Google 試算表公式,只取出數量的數字。有些列可能沒有數量,這種情況請回空白。
拿到公式後,我一定會先貼在三五列的小樣本上,對照自己手算的結果,再套到整欄。AI 給的公式有可能用了 Excel 才有的函式,或是寫了 Sheets 不支援的正規表示式語法,所以不能直接相信。Sheets 的 REGEXREPLACE 用的是 RE2 這個引擎,\s 不含全形空格,也沒有 \uXXXX,這是它常會寫錯的地方。
取出冰度
C2 是「數量:3 冰度:微冰」,請用 REGEXREPLACE 寫公式,只留下冰度的值「微冰」,不要有「冰度:」這幾個字。
這題得到 微冰,意思是把冰度冒號以前的整段(含冒號)換成空字串。
個資不要貼給外部服務
姓名、電話、Email、地址、身分證字號、訂單編號對得回人的資料,我一律不貼到外部的 AI 服務。我不清楚每個服務怎麼處理貼進去的內容,所以預設它會離開我能控制的範圍。
要問的話,用這幾個做法:
- 只貼樣本,而且把樣本換成格式一樣的假資料,例如把電話換成同樣長度的亂數。
- 只描述格式,不貼內容:「電話欄有的有連字號、有的有括號」。
- 公司或學校有資料規範的話,以規範為準。
回頭看上面那份訂單,品項、日期、備註沒有個資,可以直接貼成樣本。換成客戶名單,就要先換成假資料再貼。分享試算表時哪些欄位會被看到,在 隱私設計 那篇另外講。
Sheets 裡面的 AI 功能
Google 在試算表裡也放了 AI 功能。介面字樣與可用性依方案及帳號而異,以官方說明為準。
- AI 函式:現行官方語法是 ,單批處理前 350 個含 AI 函式的選取格,輸出以文字為基準。官方語法只有這兩個參數,詳見 AI 函式入門。適合把難寫成規則的備註分成「甜度」「冰度」「其他」;後續要算數字時先檢查型態。
- Gemini 側邊欄:在試算表右邊用對話的方式問問題,需要有 Gemini 的方案。
- 自然語言產生公式:在 Gemini 描述需求,它幫你產生公式,2025 年 9 月公告了這項功能的升級。
- 排解公式錯誤、以 Gemini 填入、貼上未格式化文字轉成表格:2026 年公告,逐步開放中,細節以官方說明為準,用不用得到要看你的帳號。
另外有一個不是 AI 的內建功能,選單在「資料」>「資料清除」,裡面有「清除建議」「移除重複內容」「裁剪空格」;「資料」底下另有「將文字分隔成不同欄」和「資料欄統計資料」。這類只需要空格、重複值的清理,用它或 TRIM 都比問 AI 單純。
AI 函式寫起來像這樣,只示範語法,不列結果。前面的 C 欄備註是固定格式,用 SPLIT 或 REGEXREPLACE 就能拆,不需要 AI。要交給 AI 的是真正的自由文字,例如假設 D 欄是店員手寫的「少糖,珍珠多一點」這類備註:
請 AI 把備註分類,只示範語法
=AI("把這則備註分類成:甜度、冰度、其他。只回答類別名稱", D2)這類 AI 的輸出,同一格重算不一定每次都一樣,所以分類結果我會當成「建議」,抽查幾列,確認沒問題再貼成值,不讓它一直留在公式裡。範圍裡的內容會交給 Gemini 處理,上一節講的個資原則一樣適用。
我的分工
我的順序是這樣的:空格、日期、拆欄這種有規則的,直接寫函式。說不出規則的,先問 AI 助理怎麼寫,拿到公式用小樣本驗證,確認後把公式放進表格。真的是在判斷語意的分類,再考慮 AI 函式,並且抽查結果。
拿手上最髒的一欄資料,挑一種問題試著用函式清清看吧!
我是喜特先生,Mr. Sheet,我們下個教學見!
接下來可以
這篇在技能樹的 Lv.3「資料整合與自動化」,模組「AI 幫你清理資料」(第 1/1 篇)。讀完這篇,路線上的下一個模組是「用資料透視表快速分析」。
回到技能樹相關文章
查看所有文章文字清理函式參考:TRIM、CLEAN、SUBSTITUTE、PROPER 與看不見的空格
整理 TRIM、CLEAN、SUBSTITUTE、REPLACE、UPPER、LOWER、PROPER 的語法與限制,包含 TRIM 清不掉全形空格與 CHAR(160)、CLEAN 只清 ASCII 0 到 31、SUBSTITUTE 第 4 參數只換第 N 次,以及用 UNICODE 找出看不見的字元。
電話、地址、單號、Email:四種混亂文字的 REGEX 實戰整理
拿一份客服回饋的混亂文字,用 REGEXEXTRACT、REGEXMATCH、REGEXREPLACE 擷取台灣手機與市話、拆出縣市與行政區、抓訂單單號、取出 Email 網域,最後用 ARRAYFORMULA 處理整欄。
問 AI 要試算表公式,提示怎麼寫:欄位、樣本、Sheets 還是 Excel
請聊天型 AI 助理寫 Google 試算表公式時,提示裡該放的四件事:欄位位置與型別、三列樣本、說明用 Google 試算表、要求逐段解釋。附一個提示寫法的前後對照,以及個資不貼給外部服務的原則。
留言討論
共 0 則留言
