Я пытаюсь добавить немного визуальной основы в слайд PowerPoint. Я обычно работаю в Excel и с удивлением узнал, что PowerPoint не предлагает функцию записи. У моего слайда в настоящее время есть шесть диаграмм, выстроенных в простую сетку 2 на 3. Я хотел бы иметь возможность создавать некоторый код VB, который выполняет следующие действия при нажатии на любой конкретный график:

  1. При нажатии на диаграмму она выводится на передний план, а затем расширяется, чтобы заполнить всю страницу.
  2. При повторном нажатии он сжимается и возвращается на свое место в сетке 2 на 3.

Возможно ли это в PowerPoint? Я искал информацию о свойствах, которая позволила бы мне контролировать местоположение объектов диаграммы, но не смогла выяснить, где находится эта информация.

1 ответ1

0

Добавьте это в свою презентацию, сохраните как PPTM, затем выберите каждый из графиков по очереди; Вставить | Действие | Запустить макрос: ResizeMe

Вы должны убедиться, что диаграммы пропорциональны размеру слайда для начала (или изменить линии, которые устанавливают диаграмму в полноэкранный режим, чтобы использовать разные пропорции).

Вы также должны убедиться, что соотношение сторон фигуры диаграммы не установлено на Заблокировано.

Sub ResizeMe(oSh As Shape)

    With oSh

        ' Is the shape full screen or normal?
        If .Left = 0 Then    ' it's full screen
            .Left = CSng(.Tags("Left"))
            .Top = CSng(.Tags("Top"))
            .Height = CSng(.Tags("Height"))
            .Width = CSng(.Tags("Width"))
        Else    ' it's small; biggify it:
            ' first, record it's small coordinates:
            .Tags.Add "Left", CStr(.Left)
            .Tags.Add "Top", CStr(.Top)
            .Tags.Add "Height", CStr(.Height)
            .Tags.Add "Width", CStr(.Width)
            ' now make it full screen
            .Left = 0
            .Top = 0
            .Height = ActivePresentation.PageSetup.SlideHeight
            .Width = ActivePresentation.PageSetup.SlideWidth
        End If

    End With

End Sub

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .