Skip to main content

如何在 Excel 中的大寫字母前插入空格?

Author: Xiaoyang Last Modified: 2025-05-12

在 Excel 中管理數據格式是確保您的試算表清晰且專業的重要方面。一個常見的格式需求是在文本字符串中的大寫字母前插入空格,這在處理連接或格式不正確的數據時通常很有必要。本指南提供了幾種有效的方法來實現這一目標。


使用公式在每個大寫字母前插入空格(Excel 2019 及更高版本)

Excel 公式提供了一種靈活的方式來在大寫字母前插入空格。這種方法非常適合偏好非程式化方法的用戶。

將以下公式複製並粘貼到空白單元格中,然後按「Enter」鍵(Excel 365 或 2021)以獲得第一個結果。(如果使用 Excel 2019,請按「Ctrl」+「Shift」+「Enter」將其作為陣列公式應用)

=TRIM(LEFT(A2,1) & TEXTJOIN("", TRUE, IF(CODE(MID(A2, ROW(INDIRECT("2:" & LEN(A2))), 1))>=65, IF(CODE(MID(A2, ROW(INDIRECT("2:" & LEN(A2))), 1))<=90, " "&MID(A2, ROW(INDIRECT("2:" & LEN(A2))), 1), MID(A2, ROW(INDIRECT("2:" & LEN(A2))), 1)), MID(A2, ROW(INDIRECT("2:" & LEN(A2))), 1))))

insert spaces before capital letters with a formula

此公式的解釋:
  • 「LEFT(A2,1)」:按原樣檢索字符串的第一個字符。
  • 「INDIRECT("2:" & LEN(A2))」:創建從第二個字符到最後一個字符的數字範圍。
  • 「MID(A2, ROW(...), 1)」:從第二個字符開始逐一提取每個字符。
  • 「CODE(...)」:檢查字符的 ASCII 值以確定它是否為大寫字母(介於 65 和 90 之間)。
  • 「TEXTJOIN("", TRUE, ...)」:將字符合併成單一字符串,在任何大寫字母前插入空格。
  • 「TRIM(...)」:刪除結果字符串開頭或結尾的額外空格。

使用 Kutools for Excel 在每個大寫字母前插入空格

Kutools for Excel 提供了一個快速且毫不費力的解決方案,可以在您的數據中的每個大寫字母前插入空格。憑藉其直觀的「添加文本」功能,您只需點擊幾下即可自動完成此任務——無需複雜的公式或編程!

Kutools for Excel 提供超過 300 種進階功能,簡化複雜任務,提升創造力與效率。 結合 AI 能力,Kutools 能夠精準自動化任務,讓數據管理變得輕而易舉。Kutools for Excel 的詳細資訊...免費試用...

1. 選擇要在大寫字母前插入空格的區域,然後點擊「Kutools」>「文本」>「添加文本」。參見截圖:
click add text of kutools

2. 在打開的「添加文本」對話框中,在「文本」框中輸入空格,勾選「僅添加至」選項,並從下拉列表中選擇「大寫字母前」。
specify the options in the dialog box

3. 點擊「確定」按鈕,如下方截圖所示,在每個大寫字母前插入空格:
Insert space before every capital letters by kutools


使用用戶定義函數在每個大寫字母前插入空格

對於需要更多靈活性的高級用戶,可以創建用戶定義函數 (UDF) 來在大寫字母前插入空格。

1. 啟動包含要添加空格的文本字符串的工作表。

2. 按住「ALT」+「F11」鍵打開「Microsoft Visual Basic for Applications」窗口。

3. 點擊「插入」>「模塊」,並將以下代碼粘貼到「模塊」窗口中。

VBA 代碼:在大寫字母前插入空格

Function AddSpaces(pValue As String) As String
'Updateby Extendoffice
Dim xOut As String
xOut = VBA.Left(pValue, 1)
For i = 2 To VBA.Len(pValue)
   xAsc = VBA.Asc(VBA.Mid(pValue, i, 1))
   If xAsc >= 65 And xAsc <= 90 Then
      xOut = xOut & " " & VBA.Mid(pValue, i, 1)
   Else
      xOut = xOut & VBA.Mid(pValue, i, 1)
   End If
Next
AddSpaces = xOut
End Function

4. 然後保存並關閉此代碼,返回工作表,在數據旁邊的空白單元格中輸入以下公式。然後拖動公式填充到其他單元格,您會看到在每個大寫字母前插入了空格。

=addspaces(A2)
Insert space before every capital letters by User Defined Function

使用 VBA 代碼在每個大寫字母前插入空格

在本節中,我們將指導您如何使用 VBA 代碼在 Excel 中的每個大寫字母前插入空格。無論您是初學者還是高級用戶,本指南都將為您提供高效完成此任務所需的工具和知識。

1. 按住「ALT」+「F11」鍵打開「Microsoft Visual Basic for Applications」窗口。

2. 點擊「插入」>「模塊」,並將以下代碼粘貼到「模塊」窗口中。

VBA 代碼:在大寫字母前插入空格

Sub AddSpacesRange()
'Updateby Extendoffice
Dim Rng As Range
Dim WorkRng As Range
Dim xOut As String
Dim xValue As String
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Application.ScreenUpdating = False
For Each Rng In WorkRng
    xValue = Rng.Value
    xOut = VBA.Left(xValue, 1)
    For i = 2 To VBA.Len(xValue)
       xAsc = VBA.Asc(VBA.Mid(xValue, i, 1))
       If xAsc >= 65 And xAsc <= 90 Then
          xOut = xOut & " " & VBA.Mid(xValue, i, 1)
       Else
          xOut = xOut & VBA.Mid(xValue, i, 1)
       End If
    Next
    Rng.Value = xOut
Next
Application.ScreenUpdating = True
End Sub

3. 然後按「F5」鍵執行此代碼,將彈出一個提示框讓您選擇要使用的數據範圍。
vba code to select the data range

4. 然後點擊「確定」關閉此提示框,空格將立即插入到大寫字母前,參見截圖:
insert spaces before capital letters with vba code

在 Excel 中每個大寫字母前插入空格可以通過多種方法實現,每種方法都有其自身的優勢。通過遵循本指南中的步驟和最佳實踐,您可以優化工作流程,輕鬆高效地處理此任務。如果您有興趣探索更多 Excel 技巧,我們的網站提供了數千個教程


相關文章:

如何在 Excel 中的逗號後添加空格?


最佳辦公效率工具

🤖 Kutools AI 助手:基於智能執行方式革新數據分析:智能執行   |  生成代碼  |  創建自訂公式  |  分析數據並生成圖表  |  調用 Kutools 函數
熱門功能查找、標記重複值或識別重複項   |  刪除空行   |  合併列或單元格而不丟失數據   |   四捨五入無需公式 ...
高級 LOOKUP多條件 VLookup    多值 VLookup  |   多表查找   |   模糊查找 ....
高級下拉列表快速創建下拉列表   |  依賴下拉列表   |  多選下拉列表 ....
列管理器添加特定數量的列  |  移動列  |  切換隱藏列的可見狀態  |  比較區域和列 ...
特色功能網格聚焦   |  設計檢視   |   增強編輯欄    工作簿與工作表管理器   |  資源庫(自動文本)   |  日期提取器   |  合併資料   |  加密/解密儲存格    按列表發送電子郵件   |  超級篩選   |   特殊篩選(篩選粗體/斜體/刪除線...) ...
頂級 15 種工具集12 個文本工具添加文本刪除特定字符、...)   |   50+ 圖表 類型甘特圖、...)   |   40+ 實用 公式基於生日計算年齡、...)   |   19 個插入工具插入QR碼根據路徑插入圖片、...)   |   12 個轉換工具金額轉大寫匯率轉換、...)   |   7 個合併與分割工具高級合併行分割儲存格、...)   |   ... 還有更多

使用 Kutools for Excel 提升您的 Excel 技巧,體驗前所未有的高效。 Kutools for Excel 提供超過 300 種高級功能來提高生產力並節省時間。  點擊這裡獲取您最需要的功能...


Office Tab 將標籤式界面帶到 Office,讓您的工作更加輕鬆

  • 在 Word、Excel、PowerPoint、Publisher、Access、Visio 和 Project 中啟用標籤式編輯和閱讀。
  • 在同一窗口的新標籤中打開和創建多個文檔,而不是在新窗口中。
  • 將您的生產力提高 50%,每天為您減少數百次鼠標點擊!