CommandBars.ExecuteMso («PasteSourceFormatting») не может сохранить формат таблицы Excel в Powerpoint при работе с Office365 - PullRequest
0 голосов
/ 07 июня 2019

Я использую команду VBA ppapp.CommandBars.ExecuteMso ("PasteSourceFormatting"), чтобы скопировать и вставить таблицу из Excel в Powerpoint.Каждая ячейка таблицы My Excel содержит некоторый текст, а цвет шрифта каждого текста ячейки представляет собой комбинацию красного и зеленого (поэтому, например, первый текст ячейки - «Том, Джим», шрифт «Том в красном» и шрифт «Джим в зеленом»).Когда я вставляю эту таблицу в powerpoint с помощью приведенной выше команды, форматирование цвета шрифта исчезает - в основном после вставки в Powerpoint, для каждой ячейки весь текст принимает цвет шрифта любого цвета шрифта начального слова в Excel (в нашемпример всего "Том, Джим" берет красный шрифт).Странно то, что эта команда прекрасно работает в версии MS OFFICE 2013 и НЕ работает в OFFICE365.Я застрял и буду признателен за любую помощь в этом.Заранее спасибо.

Я также пытался заменить команду на ppapp.ActiveWindow.View.PasteSpecial ppPasteDefault, но это создает ту же проблему (работает в версии 2013 и НЕ работает в OFFICE365).Когда я вручную копирую вставку таблицы из Excel в Powerpoint, это ОДИНАКОВАЯ проблема.

часть кода, которая делает это:

sub exceltoppt()
    Dim sourcebook
    sourcebook = ActiveWorkbook.Name

    Dim ppapp as Powerpoint.Application
    Dim pppres as Powerpoint.Presentation

    Set ppapp = CreateObject("Powerpoint.Application")
    ppapp.Visible = msoCTrue

    Set pppres = ppapp.Presentations.Open("Sample Presentation.pptx")
    Set pppres = ppapp.ActivePresentation

    Workbooks(sourcebook).Activate

    Range("TargetRange").Select

    Selection.Copy

    pppres.Slides(1).Select
    pppres.Slides(1).Shapes("Table1").Table.cell(1,1).Shape.Select
    ppapp.CommandBars.ExecuteMso ("PasteSourceFormatting")
End sub

Я ожидал, что таблица Excel сохранитего форматирование цвета шрифта (сочетание красного и зеленого шрифта в каждой ячейке), но в powerpoint текст каждой ячейки имеет только один цвет (цвет начального слова в таблице Excel).

...