Как запретить редактирование текстового поля в Excel, чтобы пользователь не мог вводить в него данные?
В этой статье рассказывается, как отключить редактирование в одном или нескольких текстовых полях (элементах управления ActiveX), чтобы запретить пользователям ввод данных в Excel.
Отключение редактирования в текстовом поле путём изменения его свойств
Отключение редактирования в нескольких текстовых полях с помощью кода VBA
Отключение редактирования в текстовом поле путём изменения его свойств
В этом разделе описано, как изменить свойства текстового поля, чтобы запретить его редактирование. Выполните следующие действия.
1. Включите режим конструктора, нажав Разработчик > Режим конструктора. См. снимок экрана:

2. Щёлкните правой кнопкой мыши текстовое поле и выберите Свойства в контекстном меню, как показано на снимке экрана ниже.

3. В открывшемся диалоговом окне Свойства установите значение Ложь в поле Доступно и закройте окно «Свойства». См. снимок экрана:

Теперь выделенное текстовое поле стало серым и недоступно для редактирования.


Раскройте магию Excel с помощью KUTOOLS AI
- Интеллектуальное выполнение: Выполняйте операции с ячейками, анализируйте данные и создавайте диаграммы — всё это доступно через простые команды.
- Пользовательские формулы: создавайте индивидуальные формулы для оптимизации рабочих процессов.
- Программирование на VBA: Пишите и внедряйте код VBA легко и без усилий.
- Анализ формул: Легко разбирайтесь даже в самых сложных формулах.
- Перевод текста: Ломайте языковые барьеры прямо в ваших таблицах.
Отключение редактирования в нескольких текстовых полях с помощью кода VBA
Если вы хотите одновременно отключить редактирование в нескольких текстовых полях на листе, воспользуйтесь приведённым ниже кодом VBA.
1. На листе, содержащем несколько флажков, редактирование которых необходимо отключить, нажмите Разработчик > Вставить > Флажок (элемент управления ActiveX), чтобы добавить флажок на лист. См. снимок экрана:

2. Щёлкните правой кнопкой мыши по флажку и выберите в контекстном меню пункт Просмотреть код. См. снимок экрана:

3. В окне Microsoft Visual Basic for Applications замените исходный код приведённым ниже кодом VBA.
Код VBA: Отключение редактирования в нескольких текстовых полях
Private Sub CheckBox1_Click()
Dim xTextBox As OLEObject
Dim xFlag As Boolean
Dim I As Long
Dim xArr
xArr = Array("TextBox1", "TextBox2", "TextBox3")
xFlag = True
If Me.CheckBox1 Then xFlag = False
For Each xTextBox In ActiveSheet.OLEObjects
If TypeName(xTextBox.Object) = "TextBox" Then
For I = 0 To UBound(xArr)
If xTextBox.Name = xArr(I) Then
xTextBox.Enabled = xFlag
End If
Next
End If
Next
End Sub Примечания:
1. В коде CheckBox1 — это имя вашего вставленного флажка, а TextBox1, TextBox2 и TextBox3 — текстовые поля, редактирование которых вы хотите отключить на листе. При необходимости измените их имена.
2. Чтобы отключить редактирование для дополнительных текстовых полей, добавьте имя нужного поля в двойных кавычках в строку:xArr = Array("TextBox1", "TextBox2", "TextBox3").
4. Затем сохраните и закройте код, после чего отключите режим конструктора. Теперь при установке флажка все указанные текстовые поля на листе станут недоступны для редактирования. См. снимок экрана:

Примечание: если снять флажок, текстовые поля снова станут доступны для редактирования.
Связанные статьи:
- Как включить автоматическое выделение всего текста в текстовом поле при его выборе в Excel?
- Как включить автозаполнение текстового поля при вводе в Excel?
- Как очистить содержимое текстового поля при клике на него в Excel?
- Как объединить текст из нескольких ячеек в одно текстовое поле в Excel?
- Как отформатировать текстовое поле в виде процентов в Excel?
Лучшие инструменты повышения продуктивности в Office
Раскройте весь потенциал Excel с помощью Kutools для Excel и ощутите эффективность как никогда раньше.Kutools для Excel предлагает более 300 расширенных функций для повышения продуктивности и Экономия времени.Нажмите здесь, чтобы получить нужную Вам функцию…
Office Tab добавляет в Office вкладки и значительно упрощает Вашу работу
- Включите редактирование и чтение во вкладках в Word, Excel, PowerPoint, Publisher, 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-дневная полнофункциональная пробная версия— без регистрации и кредитной карты
- Лучшее соотношение цены и качества— экономия по сравнению с покупкой отдельных надстроек