Нет, PowerPoint не имеет функции, которая позволила бы вам сделать это.
Что именно вы пытаетесь достичь? Возможно, есть какой-то другой способ.
Я работаю над презентацией с около 150 комбинированных таблиц и диаграмм, чтобы отслеживать. Панель выбора и видимости (Инструменты изображения> Упорядочить> Панель выбора) позволяет мне назвать и просмотреть список всех фигур на слайде, но есть ли возможность подняться на уровень и просмотреть список всех фигур, используемых во всем презентация?
Нет, PowerPoint не имеет функции, которая позволила бы вам сделать это.
Что именно вы пытаетесь достичь? Возможно, есть какой-то другой способ.
Я хотел дать частичный ответ на свой вопрос выше, основываясь на VBA, найденной в следующем потоке о переполнении стека: VBA, чтобы вывести список всех имен объектов в презентации PowerPoint.
Технически это решение позволяет человеку просматривать все формы, используемые в презентации Power Point, через отчет в виде текстового файла.
Sub ListAllShapes() Dim curSlide As Slide Dim curShape As Shape Dim lFile As Long Dim sPath As String sPath = ActivePresentation.Path lFile = FreeFile Open sPath & "\All Shapes.txt" For Append As #lFile For Each curSlide In ActivePresentation.Slides Print #lFile, "SLIDE " & curSlide.SlideNumber For Each curShape In curSlide.Shapes Print #lFile, " " & curShape.Name Next curShape Next curSlide Close #lFile End Sub
Это создает текстовый отчет, который выглядит следующим образом:
SLIDE 1 Rectangle 2 Rectangle 4 Rectangle 4 TextBox 10 Rectangle 4 SLIDE 2 TextBox 7 Rectangle 2 Rectangle 4 Rectangle 4 Line 37 Picture 1 Picture 2 SLIDE 3 Rectangle 2 Rectangle 4 Rectangle 7 TextBox 7 Line 28 Picture 3 Picture 4, etc...
Для моего конкретного случая использования я хотел получить список только определенных фигур на слайде, чего я достиг, сначала используя панель выбора, чтобы назвать каждое изображение, содержащее фигуру или таблицу, с соответствующим префиксом, а затем запустив это:
Sub ListFiguresAndTables() Dim curSlide As Slide Dim curShape As Shape Dim lFile As Long Dim sPath As String sPath = ActivePresentation.Path lFile = FreeFile Open sPath & "\Figures and Tables.txt" For Append As #lFile For Each curSlide In ActivePresentation.Slides Print #lFile, "SLIDE " & curSlide.SlideNumber For Each curShape In curSlide.Shapes If Left(curShape.Name, 4) = "Fig." Or Left(curShape.Name, 5) = "Table" Then Print #lFile, " " & curShape.Name End If Next curShape Next curSlide Close #lFile End Sub
К сожалению, единственный способ заставить макрос печатать эти объекты в возрастающем порядке - это использовать панель выбора, чтобы сначала вручную расположить фигуры в обратном (нисходящем) порядке.
SLIDE 1 Fig. 1 Fig. 2 Fig. 3 Table 1 SLIDE 2 Fig. 4 Fig. 5 Fig. 6 SLIDE 3 Table 2 Table 3 (etc.)