如何在 Excel 字串中找出第 n 個空格的位置?
在 Excel 中處理文字資料時,經常會遇到包含多個以空格分隔單字的儲存格。例如,您可能需要找出每個儲存格中第一個或第 n 個空格的位置,以便進一步處理或擷取字串中的關鍵資訊。精準定位特定空格字元的位置,有助於輕鬆拆分姓名、解析代碼或整理雜亂資料。本指南將介紹實用技巧,協助您快速找出儲存格內容中第一個、第二個,甚至任意第 n 個空格的位置(如下方截圖所示)。此外,您還將學會如何清除多餘空格,並探索適用於彈性及進階空格定位需求的替代解決方案。
使用公式找出第 n 個空格的位置
若要精準找出文字字串中特定空格的位置,可善用 Excel 內建函數。以下每種方法皆透過巢狀 FIND 函數,協助您快速定位第 1、2、3 或第 4 個空格,特別適用於空格數量有限且事先已知的場景。
| 找出第一個空格的位置 | =FIND(" ",A1) |
| 找出第二個空格的位置 | =FIND(" ",A1,FIND(" ",A1)+1) |
| 找出第三個空格的位置 | =FIND(" ",A1,FIND(" ",A1,FIND(" ",A1)+1)+1) |
| 找出第四個空格的位置 | =FIND(" ",A1,FIND(" ",A1,FIND(" ",A1, FIND(" ",A1)+1)+1)+1) |
例如,若您想找出清單中每個儲存格的第二個空格位置,操作方式如下:
選取一個空白儲存格(例如 C2),並輸入下列公式:
=FIND(" ",A2,FIND(" ",A2)+1) 輸入公式後,按下 Enter 鍵。若要將此公式套用至其他儲存格,請向下拖曳填滿控點,系統會自動為每個字串計算位置。詳情請參閱截圖:
注意:若儲存格中的空格數量少於指定值,公式將傳回 #VALUE! 錯誤。建議先檢查資料,或搭配 IFERROR 等錯誤處理函數,以提升公式的穩健性!
此方法清晰又快速,適用於處理少量且空格數固定的狀況。若需定位字串中更高序位的空格,或處理動態的 n 值,請試用下方更具彈性的公式解決方案。
使用更具彈性的 Excel 公式定位第 n 個空格
若您想找出文字字串中第 n 個空格的位置,卻不想手動巢狀多層 FIND 函數,可結合 SUBSTITUTE 與 FIND 函數輕鬆達成。此方法讓您只需調整單一儲存格引用或變數,即可動態切換目標空格位置,非常適合處理長字串或模組化的 Excel 工作流程。
例如,假設完整文字位於 A2 儲存格,而您想找出的空格位置(例如第 3 個空格)位於 B2 儲存格(請在 B2 中輸入所需的 n 值,例如 3):
=FIND("#",SUBSTITUTE(A2," ","#",B2)) 在 C2 儲存格中輸入此公式,然後向下複製以分析資料集中的其他列。該公式會將第 n 個空格替換為「#」字元,再透過 FIND 函數找出其位置;當目標空格的位置因列而異,或需處理較複雜的文字字串時,此方法尤其高效。
提示:
- 此公式支援動態 n 值,讓您能針對每一列參照不同的 n(B2)。
- 若 B2 中的數值超過字串中的空格數量,結果將顯示 #VALUE!。您可以使用
IFERROR函數包裹公式,獲得更友善的顯示效果,例如:=IFERROR(FIND("#",SUBSTITUTE(A2," ","#",B2)),"Not Found")。 - 如果您的實際資料中包含「#」字元,請嘗試將公式中的「#」替換為其他符號。
處理變動資料或較大的 n 值時,建議採用此技巧,可顯著提升複雜資料結構的處理效率。
使用 VBA 巨集找出第 n 個空格的位置
當您追求極致彈性,或需要針對大型資料集實現自動化處理時,VBA 巨集無疑是絕佳選擇。透過 VBA 解決方案,您能逐一檢查字串中的每個字元、精確計算空格數量,並即時回報其出現位置。即使面對多變的文字結構、冗長句子,或動態調整的 n 值需求,此方法依然穩定可靠、運作流暢。
1. 按一下開發人員工具>Visual Basic。在 Microsoft Visual Basic for Applications 視窗開啟後,按一下插入> 模組,並將下列程式碼貼到模組中:
Sub PositionOfNthSpace()
Dim txt As String
Dim spaceNum As Integer
Dim i As Integer
Dim cnt As Integer
Dim pos As Integer
On Error Resume Next
xTitleId = "KutoolsforExcel"
txt = Application.InputBox("Enter text to search:", xTitleId, "", Type:=2)
spaceNum = Application.InputBox("Find which space position (n):", xTitleId, 1, Type:=1)
pos = 0
cnt = 0
For i = 1 To Len(txt)
If Mid(txt, i, 1) = " " Then
cnt = cnt + 1
If cnt = spaceNum Then
pos = i
Exit For
End If
End If
Next i
If pos = 0 Then
MsgBox "The string does not contain " & spaceNum & " spaces.", vbExclamation, xTitleId
Else
MsgBox "The position of the " & spaceNum & "th space is: " & pos, vbInformation, xTitleId
End If
End Sub 2. 按一下
執行按鈕以執行巨集。系統將依序顯示兩個對話方塊:首先輸入文字字串,接著指定要尋找的空格位置(例如輸入「3」以尋找第 3 個空格)。若找到該位置,巨集將顯示字元位置;否則會彈出通知訊息。
當標準公式無法滿足需求,或需要批次處理多樣化字串資料中的空格位置時,此 VBA 方法展現強大效能。
從字串中移除開頭/結尾/多餘/所有空格
通常,您可能需要清理文字資料中不必要的空格,例如開頭、結尾、多餘或全部空格。Excel 並未提供可直接大量移除空格的內建函數,但透過功能強大的增益集 Kutools for Excel,即可快速又精準地簡化此流程!在依據空格位置分析或拆分文字前,「刪除空格」工具特別適合用來整理匯入資料或格式不良的資料集,讓您輕鬆掌握乾淨整齊的文字內容。
免費安裝 Kutools for Excel 後,請依照下列步驟操作:
1. 選取您要刪除空格的字串,然後點擊 Kutools> 文字> 刪除空格。操作畫面請參閱下方截圖:
2. 在刪除空格對話方塊中,勾選空格類型下方的所需選項,例如「移除前面的空格」、「移除後面的空格」、「移除多餘空格」或「移除所有空格」。確認前,您可先於預覽區段即時檢視處理結果。請參閱截圖:
3. 按一下確定或套用,選取字串中多餘的空格將立即被移除。
總結來說,無論是處理小型清單或大型資料集,您都能依需求靈活選用多種解決方案——內建公式、彈性公式組合、VBA 巨集,或是增益集工具。當空格數量已知且有限時,巢狀 FIND 函數表現出色;若 n 值較大或具變動性,則可考慮結合 SUBSTITUTE 與 FIND 函數,或透過 VBA 實現客製化自動化。為確保結果最可靠,務必事先清除字串中多餘的空格。
最佳 Office 生產力工具
| 🤖 | KUTOOLS AI 助手:基於以下內容徹底革新數據分析:智慧執行 | 產生程式碼| 建立自訂公式 | 分析資料並產生圖表| 呼叫增強函數…… |
| 熱門功能:尋找、醒目提示或標記重複值 | 刪除空白行 | 合併列或儲存格而不遺失資料 | 不使用公式的四捨五入…… | |
| 高級 LOOKUP:多重條件 VLookup | 多重數值 VLookup | 跨多個工作表 VLookup | 模糊查找…… | |
| 高級下拉列表:快速建立下拉式清單 | 相依式下拉式清單 | 多選下拉式清單…… | |
| 欄位管理員:新增指定數量的欄位|移動欄位|切換隱藏欄位的可見狀態|比較範圍與欄位…… | |
| 精選功能:網格聚焦 | 設計視圖 |增強編輯欄 | 工作簿與工作表管理員 | 資源庫(自動文字)| 日期提取 | 合併工作表 | 加密/解密儲存格 | 依清單傳送電子郵件 | 超級篩選 | 特殊篩選(篩選粗體儲存格/斜體/刪除線……) ...... | |
| 頂尖 15 工具組:12 文字工具(添加文本,刪除特定字符,……)| 50+ 圖表 類型(甘特圖,……)| 40+ 實用公式(基於生日計算年齡,……)| 19 插入工具(插入二維碼,從路徑插入圖片,……)| 12 轉換工具(金額轉大寫,匯率轉換,……)| 7 合併和拆分工具(高級合併行,分割儲存格,……)|……以及更多 |
運用 Kutools for Excel 強化您的 Excel 技能,體驗前所未有的高效能!Kutools for Excel 提供超過 300 項進階功能,大幅提升生產力並節省寶貴時間。立即點擊,取得您最需要的功能……
Office Tab 為 Office 帶來分頁式介面,讓您的工作更輕鬆自在!
- 在 Word、Excel、PowerPoint 中啟用分頁式編輯與閱讀功能,以及 Access、Visio 與 Project。
- 在同視窗的新分頁中開啟並建立多份文件,而非另開新視窗。
- 每天為您提升 50% 的工作效率,並省下數百次滑鼠點擊!
所有 Kutools 增益集,一個安裝程式
Kutools for Office 套件整合了 Excel、Word、Outlook 與 PowerPoint 的增益集,以及 Office Tab Pro,非常適合需要跨多個 Office 應用程式協作的團隊使用!
- 全能套件— 包含 Excel、Word、Outlook 與 PowerPoint 增益集,以及 Office Tab Pro
- 一個安裝程式,一個授權— 數分鐘內即可完成設定(支援 MSI)
- 協同運作更出色— 在多個 Office 應用程式間實現流暢的生產力體驗
- 30 天完整功能試用— 無需註冊,無需信用卡
- 超值之選— 比單獨購買各增益集更省費用