一、案例定位

books_with_errors.xlsx 的 Author 欄存在名字與姓氏黏在一起的錯誤,例如 BrentDykes。原書示範先明確描述這個問題,再要求 Copilot 產生容錯公式。

二、學習目標

三、案例情境

原書 Prompt 指出:Author 有時缺少 name 與 surname 之間的空格,應依大寫字母切分。

四、開始資料

Author 狀態 預期 Name 預期 Surname
Brent Dykes 正常空格 Brent Dykes
BrentDykes 缺少空格 Brent Dykes

五、Excel/R/AI 分析方法

原書 Copilot 公式:

Name:
=IFERROR(TEXTBEFORE([@Author]," "),LEFT([@Author],MIN(IFERROR(FIND(CHAR(ROW(INDIRECT("66:90"))),[@Author],2),LEN([@Author])+1))-1))

Surname:
=IFERROR(TEXTAFTER([@Author]," "),MID([@Author],MIN(IFERROR(FIND(CHAR(ROW(INDIRECT("66:90"))),[@Author],2),LEN([@Author])+1)),LEN([@Author])))

六、計算結果

正常值直接由 TEXTBEFORE/TEXTAFTER 拆分;BrentDykes 因找不到空格,轉入 IFERROR 的第二套邏輯,找到 D 的大寫位置,輸出 Brent/Dykes。

七、結果分析與管理解讀

公式比單純依空格拆分更健壯,但仍假設「姓氏起點可由下一個大寫字母辨識」。遇到 McDonald、O’Connor、全大寫或複合名字時仍需額外測試。

八、AI 提問詞

Author 欄有些值缺少名字與姓氏間的空格。請先用空格拆分;若找不到空格,再偵測第一個字元之後的第一個大寫英文字母作為姓氏起點。請先用 Brent Dykes 與 BrentDykes 驗證。

九、思考/情境變動