Skip to main content

如何防止在 Excel 中輸入特殊字符?

Author: Xiaoyang Last Modified: 2025-08-06

在某些情況下,我們只想在單元格中輸入字母或數字,並防止輸入特殊字符,例如 @#$%& 等。Excel 是否有函數可以在插入值時防止輸入特殊字符呢?

使用資料驗證防止特殊字符輸入

使用 VBA 代碼防止特殊字符輸入

使用 Kutools for Excel 防止特殊字符輸入 good idea3


使用資料驗證防止特殊字符輸入

Excel 的資料驗證功能可以幫助您只允許輸入字母數字值。請按照以下步驟操作:

1. 選擇一個您想防止特殊字符輸入的區域。

2. 然後點擊 資料 > 資料驗證 > 資料驗證,參見截圖:

A screenshot of Data Validation option in Excel ribbon

3. 在資料驗證對話框中,點擊 設定 標籤,並從 允許 下拉列表中選擇 自訂,然後在 公式文本框中輸入此公式 =ISNUMBER(SUMPRODUCT(SEARCH(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"))),參見截圖:

注意:A1 表示所選區域的第一個單元格(從左到右)。

A screenshot of the Data Validation formula for restricting special characters in Excel

4. 然後點擊 確定 關閉該對話框,現在,當您嘗試在應用了該選項的指定列中輸入包含特殊字符的值時,將收到以下警告消息。

A screenshot showing a warning when entering special characters in Excel


使用 VBA 代碼防止特殊字符輸入

以下 VBA 代碼也可以幫助您在輸入文字值時防止特殊字符。

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

2. 然後從左側的專案資源管理器中選擇您使用的活頁簿,雙擊它以打開模組,然後將以下 VBA 代碼複製並貼上到空白 模組中:

VBA 代碼:防止在 Excel 中輸入特殊字符

Private Const FCheckRgAddress As String = "A1:A100"
Private Sub Worksheet_Change(ByVal Target As Range)
'Update 20140905
    Dim xChanged As Range
    Dim xRg As Range
    Dim xString As String
    Dim sErrors As String
    Dim xRegExp As Variant
    Dim xHasErr As Boolean
    Set xChanged = Application.Intersect(Range(FCheckRgAddress), Target)
    If xChanged Is Nothing Then Exit Sub
    Set xRegExp = CreateObject("VBScript.RegExp")
    xRegExp.Global = True
    xRegExp.IgnoreCase = True
    xRegExp.Pattern = "[^0-9a-z]"
    For Each xRg In xChanged
        If xRegExp.Test(xRg.Value) Then
            xHasErr = True
            Application.EnableEvents = False
            xRg.ClearContents
            Application.EnableEvents = True
        End If
    Next
    If xHasErr Then MsgBox "These cells had invalid entries and have been cleared:"
End Sub

A screenshot showing VBA code for restricting special characters in Excel

注意:在上述代碼中,您可以更改 Private Const FCheckRgAddress As String = "A1:A100" 腳本中的範圍 A1: A100 為您想要防止特殊字符輸入的範圍。

3. 然後保存並關閉此代碼。現在,當您在範圍 A1:A100 中輸入帶有特殊字符的文字值時,輸入內容將立即被清除,並且您會收到以下警告消息。

A screenshot of a warning dialog when attempting to enter special characters in Excel


使用 Kutools for Excel 防止特殊字符輸入

實際上,如果您有 Kutools for Excel -- 一款方便且多功能的工具,您可以通過其 限制輸入 功能快速防止在選定區域內輸入特殊字符,只需勾選即可。

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

安裝 Kutools for Excel 後,請按以下步驟操作:

1. 選擇您要防止輸入特殊字符的區域,然後點擊 Kutools > 限制輸入 > 限制輸入。參見截圖:
A screenshot of Kutools Prevent Typing option in Excel

2. 在 限制輸入 對話框中,勾選 禁止輸入特殊字符 選項。參見截圖:
A screenshot of the Kutools Prevent Typing dialog

3. 點擊 確定,彈出一個對話框提醒您如果應用此功能將移除資料驗證,點擊 進入下一個對話框,它將提醒您該功能已在該部分生效。參見截圖:
A screenshot of confirmation dialog for Kutools Prevent Typing in Excel

4. 點擊 確定 關閉對話框,從現在開始,當您嘗試在選定區域內輸入特殊字符時,將彈出警告對話框。
A screenshot of warning when entering special characters in Excel

提示:如果您想阻止在一列中輸入重複值,請嘗試使用 Kutools for Excel 的 防止重複項 功能,如下圖所示。立即下載並免費試用。

A screenshot of Kutools Prevent Duplicate option in Excel

Kutools for Excel - 超過 300 種必備工具,讓 Excel 功能更強大。永久免費享受 AI 功能!立即獲取

演示:使用 Kutools for Excel 防止特殊字符輸入

Kutools for Excel:超過 300 種實用工具任您使用!永久免費享受AI功能!立即下載!

相關文章:

如何防止在 Excel 中輸入帶空格的值?

如何防止在 Excel 的一列中輸入重複條目?

最佳 Office 辦公效率工具

🤖 Kutools AI Aide:徹底革新數據分析,基於智能執行|生成程式碼|創建自訂公式|分析數據並生成圖表|調用 Kutools Functions
熱門功能查找、選取項目的背景色或標記重複值 | 刪除空行 | 合併列或單元格且不丟失資料 | 四捨五入...
高級 LOOKUP多條件查找|多值查找|多表查找|模糊查找...
高級下拉列表快速創建下拉列表 | 關聯下拉列表 | 多選下拉列表 ...
列管理器添加指定數量的列 | 移動列 | 切換隱藏列的可見狀態 | 區域與列比較 ...
精選功能網格聚焦 | 設計檢視 | 增強編輯欄 | 工作簿及工作表管理器 | 資源庫 (自動文本) | 日期提取器 | 合併資料 | 加密/解密儲存格 | 按清單發送電子郵件 | 超級篩選 | 特殊篩選(篩選粗體/傾斜/刪除線 ...)...
前15 大工具集12 款文本工具添加文本刪除特定字符,...)|50+ 種圖表 類型甘特圖,...)|40+ 實用 公式基於生日計算年齡,...)|19 款插入工具插入QR码按路徑插入圖片,...)|12 款轉換工具金額轉大寫匯率轉換,...)|7 款合併和分割工具高級合併行分割儲存格,...)| ...以及更多
使用 Kutools 支援你的語言——支援英語、西班牙語、德語、法語、中文及40 多種語言!

利用 Kutools for Excel 大幅提升你的 Excel 技能,感受前所未有的高效體驗。 Kutools for Excel 提供超過300 項高級功能,助你提升效率並保存時間。 點此查看你最需要的功能...


Office Tab 為 Office 帶來標籤式介面,讓你的工作更加輕鬆

  • 啟用 Word、Excel、PowerPoint 的標籤式編輯和閱讀功能
  • 在同一個視窗的標籤中打開和創建多個文件,而不是在新窗口中分開開啟。
  • 可提升你50% 的工作效率,每天為你大量減少滑鼠點擊次數!