Страницы: 1
RSS
Выделение слова цветом и толщиной шрифта в MsgBox
 
есть такое сообщение:  
MsgBox "Расчет тарифа не возможен, т.к. поле <<СРОК СТРАХОВАНИЯ>> не заполненно", Title:="Внимание!!!"  
 
как <<СРОК СТРАХОВАНИЯ>> выделить жирным шрифтом и красным цветом?
 
MsgBox "все пропало шеф, " & Format("все пропало!", ">")  
 
Похоже, это все, что доступно для строк :О(
 
в стандартном MsgBox нельзя.  
рисуйте UserForm и раскрашивайте TextBox'ы как угодно.  
можно даже подпрыгивающих и машущих флажками человечков добавить.
фрилансер Excel, VBA - контакты в профиле
"Совершенствоваться не обязательно. Выживание — дело добровольное." Э.Деминг
 
машущие флажками человечки это канечно забавно, но лишнее. можете на примере показать как разукрасить label или принципеально TextBox? Слусл такой, если поле пустое и пытаешься сохранить, то выдает ошибку, то что в <<   >> нужно заменить на жирный шрифт и красный цвет.
 
насчет цвета не знаю, а жирный шрифт можно так:  
делаем 3 поля  
1. слово "поле"  
2. слово "СТРАХОВАТЕЛЬ"  
3. фрза "не заполнено"  
Для поля 2 изменяем свойства шрифта на жирный
 
текст ошибки будет меняться, соответственно это не подходит.
 
Просто в свойствах Label в строке Font укажите "жирный" (можно и размер шрифта ещё), а в строке Fore Color - выбрать нужный цвет.
 
Прочитал невнимательно - Вам нужно ЧАСТЬ строки. Тогда, как сказали выше - из трёх Label, А если фрагмент, который нужно красить, будет меняться, то используйте переменную.
 
Это было бы приемлемо, если текст сообщения был примерно одинаковый, текс бокса 1 может содержать одно слово, а может и целую строку. например:  
поле <<страхователь>> не заполнено..  
Вы не можете использовать данныю программу, так как <<выбранное ТС не соответствует перечню>>...
 
ну можно по разному извратиться.  
не обязательно же в одну строку все писать.  
поле  
СТРАХОВАТЕЛЬ  
не заполнено!  
 
Так ведь тоже можно. И поле под "переменное значение" сделать с запасом по ширине.
 
извратиться то можно, но не нужно, нужно чтобы все было красиво, а не топориком рублено. придеться видать оставить капсом. хоть это и не очень...
 
Вставьте это и попробуйте нажать кнопку.  
 
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)  
If Me.TextBox1.Value = "" Then  
MsgBox "Поле <<СТРАХОВАТЕЛЬ>> не заполненно"  
Me.TextBox1.Value = "#########"  
Me.TextBox1.BackColor = RGB(255, 0, 0)  
   With TextBox1  
       .SelStart = 0  
       .SelLength = Len(Me.ActiveControl.Text)  
   End With  
Cancel = True  
End If  
End Sub
 
Тут надо использовать Rich Textbox Control, пример тут: http://vbbook.ru/book/82/
 
Опять же изменение цвета и размера происходит не на кусок текста, а на весь бокс. Или я может что не понял.
Страницы: 1
Читают тему
Наверх