Я использую команду 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).