Измените шрифт части текста в текстовом поле в VBA

#vba #textbox #powerpoint

#vba #текстовое поле #powerpoint

Вопрос:

Хорошо, об этом еще не спрашивали.

Итак, недавно я начал изучать VBA в PowerPoint. Я начал создавать что-то похожее на текстовый редактор в слайд-шоу. Но проблема в том, что кнопки, которые я сделал, которые должны были сделать выделенный текст жирным, курсивным или подчеркнутым, превращают весь текст внутри текстового поля в жирный, курсивный или подчеркнутый текст.

Текущий метод, который я использовал для изменения шрифта текста, таков:

 Private Sub CommandButton1_Click()
    If TextBox1.Text.Font.Bold = False Then
        TextBox1.Text.Font.Bold = True
    Else
        TextBox1.Text.Font.Bold = False
    End If
End Sub
  

Очевидно, что этот код сделает весь текст в текстовом поле 1 выделенным жирным шрифтом при нажатии CommandButton1. Но что мне делать, если я хочу, чтобы только часть текста была выделена жирным шрифтом (то есть выделенный текст)?

Ответ №1:

Насколько я знаю, вы не можете управлять форматированием текста текстового поля, кроме как в целом.

Я думаю, что в VB вы могли бы использовать элемент управления форматированным текстовым полем для выполнения этой работы, но PPT / VBA его не предоставляет.

Ответ №2:

Я знаю, что это работает при работе с объектами VBA и PowerPoint:

…Форма.Текстовый фрейм.TextRange.Символы (10, 15).Шрифт.Цвет.RGB = RGB(, , )

…Форма.Текстовый фрейм.TextRange.Символы (10, 15).Шрифт.Курсив = msoTrue

Я не пробовал использовать текстовые поля Excel.