若要將 Google 試算表的某一欄轉換成逗號分隔的清單,請複製不含標題的該欄,將值貼到 Column to Comma Separated List 工具中,保留 CSV 引號功能啟用,然後點擊 Convert column。瀏覽器會依換行字元分割貼上的內容,套用你所選擇的清理選項,並把每個值包進一對雙引號中。結果會顯示在一個唯讀的輸出框裡,附上精確的值數量,另外有一個獨立的 Copy result 按鈕會把整個字串放到你的剪貼簿。由於每個值都會被包起來,且內部的雙引號會被加倍,所以像 Smith, Jane 這樣的名字會保持為一個值,而像 6" bolt 這樣的測量值會變成 6"" bolt,而不會破壞前後的順序。整個轉換都在瀏覽器內執行,因此試算表的內容絕不會離開這個頁面。處理上限為 500,000 個輸入字元與 10,000 行,超過這些上限的貼上會被拒絕,以維持頁面的回應速度。輸出是一行文字,可直接用於標籤、商品代碼、IN 子句,或任何接受逗號分隔序列的目的端。在貼上之前,請先比對顯示的值數量與你的來源清單,並檢查任何對標點敏感的項目,確認它們在清理後仍然完整。這個快速的比對能及早抓出那些稍後在 CSV 匯入、資料庫查詢或標籤篩選中才會顯現的小錯誤。

採用引號感知轉換的理由
Google 試算表內建了 TEXTJOIN 函式,可以用分隔符號連接一個範圍,對於純文字清單來說相當好用。但只要值裡出現逗號、雙引號或前置空格,問題就開始了。TEXTJOIN 並不會把值包進引號,所以 Smith, Jane 會在輸出中悄悄變成兩個欄位,任何帶有多餘空格的儲存格也會把空格留在連接後的字串中。像 =TEXTJOIN(", ", TRUE, A2:A100) 這樣的公式雖然方便,卻把跳脫處理的責任留給你,而且產生的輸出可能被下游工具誤讀。一個具有引號感知能力的瀏覽器工具會套用試算表、資料庫和多數資料匯入工具本來就理解的同一條 CSV 規則:用雙引號把每個值包起來,並把值內部的雙引號加倍。這能讓欄位界線一目瞭然,使空白或僅含空白的項目清楚可見,並避免那種把整齊的公式輸出變成壞掉匯入的隱性損壞。由於轉換是在本機進行,試算表不需要被分享、匯出或附加到任何腳本,結果就能直接貼到一個 Sheets 儲存格、一個 Notion 屬性、一個 SQL 參數,或任何支援 CSV 的應用程式,完全不需要額外的下載步驟。
在 Google 試算表中準備你的欄位
從 Sheets 的某個欄位到工具的最快路徑,是只複製你想要的儲存格,並把標題留在原地。用游標選取範圍,按住 Shift 並點擊最後一個儲存格以延伸選取範圍,然後在 Windows 上按 Ctrl+C,或在 macOS 上按 Cmd+C。如果該欄從第 1 列開始,且第 1 列是像 Email 或 Tag 這樣的標籤,請先點擊 A2 儲存格,再從那裡往下選到最後一個有資料的列,以排除標題。如果要選取整欄,請點擊欄位字母來選取整欄,然後從第 2 列往下點擊並拖曳,把標題排除在外。按右鍵選擇 Copy,或使用鍵盤快捷鍵。如果儲存格包含會產生你要的可見文字的公式,請選取範圍,按 Ctrl+C,然後按 Ctrl+Shift+V,並選擇僅貼上值(Paste values only),這樣貼上的就是顯示出來的文字,而不是公式本身。複製完成後,切換到工具所在的瀏覽器分頁,並點擊輸入區域。輸入欄位接受純文字,所以 Sheets 放在剪貼簿上的以 Tab 分隔的格式其實無害:在一般單欄複製中,不會有任何儲存格內含 Tab 字元,而任何偷偷跑進來的 Tab 會落在同一行中,與前後文字並列,而不會跑到新的一行。
使用工具轉換欄位
以下是把貼上的值轉換成單行逗號分隔文字的三步驟工作流程。
- 每行貼上一個值,並決定要清理什麼。點擊輸入框,使用 Ctrl+V 或 Cmd+V 貼上。每個儲存格會變成獨立的一行。選擇是否要修剪前後空白、移除空白行,以及移除重複的值。對於一般的 Sheets 匯出,請保留修剪空白與移除空白行啟用;只有在目的地不需要區分重複值時,才啟用移除重複值。
- 保持 CSV 引號啟用,並執行轉換。預設的 CSV-quote every value 設定會把每一行用雙引號包起來,並把內部的雙引號加倍。當目的地是 CSV 檔、試算表匯入、結構化的資料庫欄位,或任何值可能包含逗號的地方,請保持啟用。點擊 Convert column。輸出會出現在唯讀框中,並顯示精確的值數量與一個 Copy result 按鈕。
- 比對數量並檢查敏感項目,然後複製。將顯示的值數量與你 Sheets 範圍中已填入資料的儲存格數量進行核對。打開輸出,抽查任何你知道包含逗號或引號的值,確認它們仍然完整。點擊 Copy result,並把字串貼到目的地。
每個清理選項實際的作用
每個選項會以固定順序執行,因此最終結果取決於你選擇的組合。下表說明每個切換會改變什麼,以及在什麼情況下值得開啟。
| 選項 | 改變的內容 | 啟用時機 |
|---|---|---|
| Trim surrounding spaces | 移除每行開頭與結尾的空白;值內部的空白則保持不動 | 當儲存格因複製貼上或表單輸入而意外帶有前置或尾端空白時 |
| Remove blank lines | 丟棄任何在修剪後為空的行 | 當貼上的內容包含空行、分區或零星的空白儲存格時 |
| Remove duplicate values | 保留第一次出現的項目,並在修剪後丟棄後續的完全相符項目;區分大小寫 | 當目的地把重複項目視為單一標籤、ID 或代碼時 |
| CSV-quote every value | 將每個值用雙引號包起來,並把內部的雙引號加倍 | 預設為啟用,建議用於任何結構化輸出,特別是當值可能包含逗號或引號時 |
去重是精確且區分大小寫的。Apple 與 apple 會被視為兩個不同的值,因為默默改變大小寫可能會影響仰賴大小寫的識別碼、商品名稱或代碼。修剪只會動到一行的邊緣,所以像 New York 這樣的值會保持為 New York,而不會被合併成 NewYork。輸出框中的結果數量會反映所有選定選項執行後的清單,因此這是一個能與來源對照的可靠檢查點。
CSV 引號如何保護對標點敏感的值
對於幾乎任何結構化的目的地來說,預設的引號行為都是最安全的選擇。下表顯示同樣四個值在啟用與未啟用 CSV 引號時的呈現方式。
| 來源行 | 啟用 CSV 引號(預設) | 未啟用 CSV 引號 |
|---|---|---|
| Alice | "Alice" | Alice |
| Smith, Jane | "Smith, Jane" | Smith, Jane |
| 6" bolt | "6"" bolt" | 6" bolt |
| (empty) | "" | (無標記) |
第一列顯示,對於單純的值來說,引號並沒有可見的缺點:Alice 讀起來仍然是 Alice。第二列就是引號發揮價值之處。如果沒有引號,Smith, Jane 會在逗號處被切成兩個欄位,這會破壞任何 CSV 匯入工具或 SQL 參數清單。第三列遵循同樣的規則:字面上的英寸符號會被加倍跳脫,因此 6" bolt 在引號內會變成 6"" bolt。第四列讓空白的位置變得清楚。未加引號的空白值會留下一個容易被忽略的尾端逗號;而加上引號的空白值會留下一對雙引號,精確地標示出位置。關閉引號會產生一個以逗號和空格連接的較簡單序列,這在撰寫文字或標籤時很方便,但只要值帶有標點就會變得模糊。對於即將進入其他工具的 Google 試算表匯出,保留引號啟用是較安全的選擇。
驗證並貼上結果
有兩項檢查能抓到那些稍後才會顯現的小錯誤。首先,查看顯示的值數量,並與你 Sheets 範圍中已填入資料的列數進行比對。如果你貼上了 47 個儲存格,而數量顯示為 42,則代表空白行被移除了,或重複項被合併,且這個數量變化是刻意為之,這值得再次確認。其次,掃描輸出,檢查任何你知道包含逗號或引號的值,確認它們仍然完整。輸出是唯讀的,並包含一個 Copy result 按鈕,所以點擊一下就會把完全相同的字串放到剪貼簿,不會多出空白,也不會截斷。切回目的地,使用 Ctrl+V 或 Cmd+V 貼上。這個字串可以直接以單行形式貼入一個 Sheets 儲存格、一個 Notion 多選屬性、一個由目的地自行處理跳脫規則的 SQL IN 子句,或一個用於後續匯入的 CSV 檔。如果之後需要不同的格式,請重新載入頁面以重新開始:瀏覽器會在頁面重新載入時清空輸入與輸出,跨工作階段之間不會保留任何資料。
想進一步了解,請參閱 在本機比對 Excel 中兩個清單的相符項目。
想進一步了解,請參閱 用於快速且公正洗牌的 List Randomizer 替代方案。