Вопрос

Этот код распечатывает каждую запись в списке шрифтов со списком в Excel 2007:

Sub FontSizeList()

Dim combo As CommandBarComboBox

Dim i As Integer
Dim j As Integer

For i = 1 To Application.CommandBars("Formatting").Controls.Count
    If Application.CommandBars("Formatting").Controls(i).Caption = "&Font Size:" Then
        Set ctl = Application.CommandBars("Formatting").Controls(i)
        For j = 1 To ctl.ListCount
            Debug.Print ctl.List(j)
        Next j
    End If
Next i

End Sub

Однако, когда я запускаю тот же код в PowerPoint 2007, список пуст? Как я могу интенсировать комбо шрифт в PowerPoint VBA? Я проверил как свойства размера шрифта, так и «включен», и они оба настроены на True.

Спасибо большое

Джо

Это было полезно?

Решение

Я попробовал ваш код на Excel и Powerpoint 2007.

На PowerPoint FontList и Fontsize не выбираются (темно -серый), если текстовый блок (или рисунок) не выбрана. Это может объяснить, почему ListCount все еще 0 при отладке.

Это также может объяснить, почему он работает на PPT 2003, потому что у вас нет ленты и, возможно, Fontsize и FontList уже выбраны.

К сожалению, даже при выборе текста блока мне не удалось иметь ListCount> 0. Я должен был посмотреть на него дальше.

Максимум

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top