У меня есть слайд PowerPoint, в котором присутствует встроенный объект Excel, который внедряется следующим образом: insert-object-create из file-browse-display в виде значка.
Я пытаюсь открыть этот лист Excel программно с помощью C #.
Проблема в том, что я получаю сообщение об ошибке:
"Необработанное исключение: System.Runtime.InteropServices.COMException: OLEFormat (неизвестный член): недопустимый запрос. Окно должно быть в режиме просмотра слайдов или заметок.
в Microsoft.Office.Interop.PowerPoint.OLEFormat.Activate () "
Я попытался изменить тип просмотра на слайд следующим образом:
presentation.Application.ActiveWindow.ViewType = PowerPoint.PpViewType.ppViewSlide;
Но, похоже, это не помогает, и я получаю ту же ошибку.
`
Microsoft.Office.Interop.PowerPoint.Application PowerPoint_App = new Microsoft.Office.Interop.PowerPoint.Application();
Microsoft.Office.Interop.PowerPoint.Presentations multi_presentations = PowerPoint_App.Presentations;
Microsoft.Office.Interop.PowerPoint.Presentation presentation = multi_presentations.Open(@"D:\test.pptx");
foreach (var item in presentation.Slides[1].Shapes)
{
var shape = (PowerPoint.Shape)item;
if(shape.Name.Contains("Object")) {
presentation.Application.ActiveWindow.ViewType = PowerPoint.PpViewType.ppViewSlide;
presentation.Application.Activate();
presentation.Application.ActiveWindow.Activate();
shape.OLEFormat.Activate();
Microsoft.Office.Interop.Excel.Workbook wb = (Excel.Workbook)shape.OLEFormat.Object;
}
}`
Это код, который я использую.
Может ли кто-нибудь, пожалуйста, помогите мне в этом.
Заранее спасибо!