Как предотвратить ввод специальных символов в Excel?
В некоторых случаях мы хотим вводить только буквы или цифры в ячейки и запретить ввод специальных символов, таких как @#$%& и т.д. Есть ли в Excel функции, которые могут предотвратить ввод специальных символов при добавлении значений?
Предотвращение ввода специальных символов с помощью проверки данных
Предотвращение ввода специальных символов с помощью кода VBA
Предотвращение ввода специальных символов с помощью Kutools для Excel ![]()
Предотвращение ввода специальных символов с помощью проверки данных
Проверка данных в Excel может помочь вам разрешить ввод только буквенно-цифровых значений. Пожалуйста, действуйте следующим образом:
1. Выберите диапазон, куда вы хотите запретить ввод специальных символов.
2. Затем нажмите Данные > Проверка данных > Проверка данных, см. скриншот:

3. В окне Проверка данных перейдите на вкладку Параметры и выберите Пользовательский из выпадающего списка Разрешить, затем введите эту формулу =ISNUMBER(SUMPRODUCT(SEARCH(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"))) в текстовое поле Формула, см. скриншот:
Примечание: A1 указывает на первую ячейку вашего выбранного диапазона (слева направо).

4. Затем нажмите OK, чтобы закрыть это окно, и теперь, когда вы вводите значения, содержащие специальные символы в указанном столбце, где вы применили параметр, появится следующее предупреждающее сообщение.

Предотвращение ввода специальных символов с помощью кода 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

Примечание: В приведенном выше коде вы можете изменить диапазон A1:A100 в строке Private Const FCheckRgAddress As String = "A1:A100" на свой собственный диапазон, где вы хотите запретить ввод специальных символов.
3. Затем сохраните и закройте этот код. Теперь, когда вы вводите текстовые значения со специальными символами в диапазоне A1:A100, запись будет немедленно очищена, и вы получите следующее предупреждающее сообщение.

Предотвращение ввода специальных символов с помощью Kutools для Excel
На самом деле, если у вас есть Kutools для Excel — удобный и многофункциональный инструмент, вы можете быстро запретить ввод специальных символов в выделенной области с помощью его функции Ограничить ввод одним кликом.
После установки Kutools для Excel выполните следующие действия:
1. Выберите диапазон, где вы хотите запретить ввод специальных символов, и нажмите Kutools > Ограничить ввод > Ограничить ввод. См. скриншот:
2. В Ограничить ввод диалоговом окне отметьте Запретить ввод специальных символов параметр. См. скриншот:
3. Нажмите Ok, и появится диалоговое окно, напоминающее вам, что оно удалит проверку данных, если вы примените эту утилиту, и нажмите Да , чтобы перейти к следующему диалогу, который сообщит вам, что утилита работает в этом разделе. См. скриншот:
4. Нажмите OK , чтобы закрыть диалог, и с этого момента появится предупреждающее диалоговое окно, когда вы попытаетесь ввести специальный символ в выделенный диапазон.

Kutools для Excel - Усильте Excel более чем 300 необходимыми инструментами. Наслаждайтесь постоянно бесплатными функциями ИИ! Получите прямо сейчас
Демонстрация: Предотвращение ввода специальных символов с помощью Kutools для Excel
Связанные статьи:
Как предотвратить ввод значений с пробелами в Excel?
Как предотвратить дублирование записей в столбце в Excel?
Лучшие инструменты для повышения продуктивности в Office
Повысьте свои навыки работы в Excel с Kutools для Excel и ощутите новую эффективность. Kutools для Excel предлагает более300 расширенных функций для повышения продуктивности и экономии времени. Щелкните здесь, чтобы получить наиболее нужную вам функцию...
Office Tab добавляет вкладочный интерфейс в Office, делая вашу работу значительно проще
- Включите редактирование и чтение во вкладках в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Открывайте и создавайте несколько документов во вкладках одного окна, а не в новых окнах.
- Увеличьте свою продуктивность на50% и сократите сотни кликов мышью ежедневно!