2016-08-02 2 views
-1

Следующая программа запускает макрос Excel VBA с именем «Macro1» из Powershell в группе файлов в папке «c: \ mfolder». Как я могу воспроизвести его для макроса Word VBA?Word VBA Macro Through Powershell

***** ****** runexcel.ps1

$excel = new-object -comobject excel.application 
$excelFiles = Get-ChildItem -Path C:\mfolder -Include *.xls -Recurse 
Foreach($file in $excelFiles) 
{ 
    $workbook = $excel.workbooks.open($file.fullname) 
    $worksheet = $workbook.worksheets.item(1) 
    $excel.Run("Macro1") 
    $workbook.save() 
    $workbook.close() 
} 
$excel.quit() 
+0

Пожалуйста, прочтите следующее: http://stackoverflow.com/help/how-to-ask –

ответ

1

Чтобы открыть MS Word с помощью Powershell, используйте следующую команду:

$word = new-object –comobject Word.Application 

В вашем цикле, используйте этот чтобы открыть каждый файл:

$doc = $word.documents.open($file.fullname) 

Вы должны быть в состоянии адаптировать остальную часть от сценария, который вы предоставили.

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