powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Копирование чартов из Excel в PowerPoint
3 сообщений из 3, страница 1 из 1
Копирование чартов из Excel в PowerPoint
    #37097524
Belthazor4
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет, столкнулся с такой проблемой. У меня есть файл с макросом, в котором происходит автоматическая генерация графиков отчета и всякими дропбоксами, которые тусуют график, каждый лист с отчетом сопровождается листом с пивотом и данными, полученными из него для построения графика. На каждом листе есть кнопочка "выгрузить в PowerPoint". Так вот собственно проблема - как скопировать график на слайд в поверпоинте, чтобы данные были прилеплены к слайду и график не менялся если на листе отчета что то меняется? В поверпоинте есть возможность делать "руками" pastespecial с embed workbook. Но так как макрос с отчетом весь запароленный и очень весомый, копировать из листа с отчетом не вариант. Придумал такую штуку :
1) при выгрузке создавать новую книгу, туда копировать график и целый лист с данными, чтобы не перепутать расположение циферок
2) есть метод для смены всех линков в книге (а информация о данных в сериях графика как раз хранится в виде external линка), которой я успешно меняю названия книги с отчетом на имя темповой, созданной книги
3) копировать график и делать pastespecial на слайд используя вставку с embed worksheet

Но вот незадача - как делать такую вставку?? Нагуглил и намсднил такой вариант
Код: plaintext
slide.shapes.pastespecial DataType:=ppOLEobjects


- этот вариант делает книгу прямо встроенную в слайд как OLE объект, это совсем не так как получается при вставке "руками". И еще отягощает отсутствие записи макросов для powerpoint(это же так? правда?)

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

руками это можно сделать так:
В общем так - я создаю новый ексельник, туда копирую тупо лист с данными, на другой чистый лист я копирую график с ссылкой на файл с макросом, потом переделываю кнопочкой "Edit links" в меню ссылки с одной книги на новую созданную, потом я жму ctrl-c с выделенным графиком новой книги, переключай на PP жму правой кнопкой и выбираю где pastespecial вариант Use destination theme & Embed workbook (H). после этого офис всовывает в файл с презентацией этот созданный темповый эксельник (можно проверить, переименовав .pptx в .zip и там он будет лежать). после этого когда тыкаешь правой кнопкой на график в PP и выбираешь меню Edit data открывается собственно этот вшитый эксельник отдельным окном и там можно менять данные. Вот собственно так.
...
Рейтинг: 0 / 0
Копирование чартов из Excel в PowerPoint
    #37561085
Dancergirl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Belthazor4,

Для копирования в power point чарта из Excel в Power Point делала отдельный файл Excel (fff.xls в примере), в который копировала данные, по ним строила диаграмму и экпортировала в PP.

Для экспорта:

Set pp = CreateObject("PowerPoint.Application")
pp.Visible = True
dirr = ActiveWorkbook.Path & "\"
WB = ActiveWorkbook.Name
shab = dirr & "Шаблон.ppt"

Set PrPP = pp.Presentations.Open(shab)
With PrPP.Slides(ii).Shapes.AddOLEObject Left:=150, Top:=120, Width:=540, Height:=350, Filename:=dirr & "fff.xls", Link:=msoFalse
End with
...
Рейтинг: 0 / 0
Копирование чартов из Excel в PowerPoint
    #37710977
no_no_no
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dancergirl,

Syntax Error?? Something goes wrong...
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Копирование чартов из Excel в PowerPoint
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]