2017-01-18 2 views
0

Alright, поэтому я открыл книгу из экземпляра Internet Explorer запускается из PowerShell с помощью:манипулируют уже запущен экземпляр Excel в PowerShell

$browser = new-object -ComObject "InternetExplorer.Application" 
$browser.navigate("url") 

Скачал/открыл книгу из URL, но я хочу, чтобы манипулировать это с запущенным скриптом. Мне было интересно, если я могу создать новый COM-объект из идентификатора процесса:

(Get-Process excel | Where-Object {$_.MainWindowTitle -like "*titleOFdownloadedEXCELwb*"}).id 

бы кто-то сможет мне точку в правильном направлении? Спасибо.

+0

Не беспокойтесь о том, чтобы получить экземпляр excel. Создайте экземпляр Excel.Application, и он автоматически предоставит вам исполняемый экземпляр. Установите видимое значение true в приложении и перечислите книги, используя коллекцию app.workbooks, и найдите свою рабочую книгу. – dgorti

+0

Спасибо за ответ. Дело в том, что книга открыта из браузера (загружена в папку temp) и затем открывается в excel. Как я могу перечислить wb? –

+0

'$ xl = [Runtime.Interopservices.Marshal] :: GetActiveObject ('Excel.Application')' – sodawillow

ответ

1
$xl = [Runtime.Interopservices.Marshal]::GetActiveObject('Excel.Ap‌​plication') 

будет нацелен на активный экземпляр Excel (если он существует).

Смежные вопросы