Вставьте таблицу диапазона Excel под текстовым фреймом подзаголовка, затем выровняйте по центру в слайде Powerpoint - PullRequest
0 голосов
/ 23 октября 2019

Я перебираю диапазон Excel и вставляю диапазоны в виде таблиц на слайды, продублированные из шаблона презентации Slide. Минимальный код показан ниже:

...
With oPres
    Set oSlide = .slides(1).Duplicate
    With oSlide
        .moveto oPres.slides.Count

         ' Delete existing sample table in slide                       
         For Each Shp In .Shapes
             If Shp.hastable Then
                 Shp.Delete
                 Exit For
             End If
         Next Shp


         ' Have to select Slide to slow down, 
         ' otherwise get Clipboard Empty error on PASTE METHODS SHOWN BELOW.
         .Select    

         .Shapes.Paste   
         '.Shapes.PasteSpecial DataType:=0,link:=0  ' DOES NOT WORK!
         'oPPT.CommandBars.ExecuteMso "PasteExcelTableSourceFormatting" 'DOES NOT WORK!
         Application.CutCopyMode = False

         Set Shp = .Shapes(.Shapes.Count)
         With Shp
             .LockAspectRatio = True
         End With
         With oPres.PageSetup
             Shp.Left = (.SlideWidth \ 2) - (Shp.Width \ 2)
             Shp.Top = (.SlideHeight \ 2) - (Shp.Height \ 2)
         End With
     End With
 End With
 ...

В настоящий момент таблицы вставляются в дублированные слайды в центре слайда и автоматически меняют размеры. Это также уменьшает / увеличивает размер шрифта.

Однако при изменении высоты и ширины диапазона Excel изменяются также высота и ширина таблицы. Иногда это приводит к тому, что таблица пересекается с текстовым фреймом подзаголовка, который находится ниже текстового фрейма заголовка.

Я хочу, чтобы таблица вставлялась точно под текстовым фреймом подзаголовка, а затем изменялась по размеру от центра, сохраняя такие же значения высоты, ширины иРазмер шрифта последовательно во всех слайдах.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...