[VBA] Запуск из командной строки

erotic

Хело. Нид хелп.
Мне требуется из своего приложения на визуалке на сях переключить слайд в презентации PowerPoint. Остановился я пока на использовании VBA, но как конкретно его использовать, я не знаю, потому что никогда на нем не прогал.
Код, в принципе, минимальный.
 Sub nextSlide
PowerPoint.ActivePresentation.SlideShowWindow.View.Next
End Sub

Вся загвоздка в том, как его выполнить из программы. Я пробовал запихнуть этот код в .vbs-файл, дописав в него вызов этой функции, и запускать этот файл, но в таком случае он пишет, что объект PowerPoint не найден.
Гуглил-яндексил, ничче не нашел. Но думаю, что решение элементарное.

stm7583298

Может, сделаешь на JS? Код там тоже минимальный, запустить можно через wscript

Dasar

> Я пробовал запихнуть этот код в .vbs-файл, дописав в него вызов этой функции, и запускать этот файл, но в таком случае он пишет, что объект PowerPoint не найден
логично. наивно ожидать что-то другое.
Папуа-НоваяГвинея.ПойтиВ тоже должен был выполнить?
создай объект PowerPoint-а и к нему уже и применяй вышеуказанную строку.
ps
если с VB до этого дела не имел, то лучше на js-пиши, он к C намного ближе.

0000

Что то в таком духе надо в vbs помещать
(в текущем виде матюкается на то что, объект ActiveWindow не поддерживает свойство - что туда приписать - мне сейчас смотреть лениво).

Set objPP = WScript.CreateObject("PowerPoint.Application")
objPP.Visible = True
objPP.ActiveWindow.Presentation.SlideShowWindow.View.Next

P.S. А почему из C++ сразу с этими объектами не работать?

Dasar

В C++ нет позднего связывания и автоучета ссылок.
Поэтому замаешься:
1. поддержкой разных версией
2. импортом нужной либы
3. пропиской правильного кол-ва AddRef/Release-ов
4. объемом получившегося кода

erotic

 Set objPP = WScript.CreateObject("PowerPoint.Application")
objPP.visible = True
objPP.ActivePresentation.SlideShowSettings.Run
objPP.ActivePresentation.SlideShowWindow.View.Previous

Великолепно, большое спасибо. По поводу C++ - в сторону ActiveX, OLE, COM и прочей непонятной хрени тоже начал копать, в принципе, было бы еще лучше что-нибудь из этого найти.
Оставить комментарий
Имя или ник:
Комментарий: