Блокировка TextBox для редактирования?
Да. можно.
Просто установите .Locked
свойства в True
Блокировка/Раскраска только в первой строке или части текста в TextBox?
No. Это невозможно в VBA. Для частичной окраски вы можете использовать RichTextBox
вместо TextBox
, но затем вы не сможете частично заблокировать управление.
Редактировать
Альтернатива: Поскольку первая строка текста содержит текст, который не должен быть отредактирован, то почему бы не показать, что данные в ToolTip
используя .ControlTipText
свойство TextBox
или сказать Label
который отображается, когда вы наводите мышь на верхнюю часть TextBox
?
Например (Использование .ControlTipText
собственности)
Option Explicit
'~~> This is what goes in the tooltip. Amend as applicable.
Const sMsg As String = "Hello World! This is an example of tooltip text"
Private Sub UserForm_Initialize()
Dim sSample As String
Dim i As Long
For i = 1 To 10
sSample = sSample & "Blah Blah" & i & vbNewLine
Next i
TextBox1.Text = sSample
'~~> Set to starting point
TextBox1.SelStart = 0
End Sub
Private Sub TextBox1_MouseMove(ByVal Button As Integer, _
ByVal Shift As Integer, _
ByVal X As Single, _
ByVal Y As Single)
TextBox1.ControlTipText = sMsg
End Sub
И теперь при наведении курсора текст на верхней части TextBox, то будет показано ToolTip
Что вы имеете в виду с "заблокировано для редактирования"? Пользователь не может удалить сообщение по умолчанию, но добавить больше текста? – Manu
Не могу удалить, не могу добавить. На самом деле я хочу, чтобы первая строка была заблокирована для редактирования. Я не думаю, что это возможно. –
Я также предложил альтернативу. Возможно, вам придется обновить страницу. –