Я снял этот скрипт онлайн, и он отлично работает для преобразования файлов в родительской папке.Однако он не выполняет итерацию по дочерним папкам.Я не получаю никаких ошибок, и я проверил правильность всех разрешений для папки.Кроме того, у меня есть сценарии, которые закодированы аналогично для файлов * .docx и * .pptx, и они успешно работают.Этот, однако, не работает, как ожидалось.Есть идеи?
$path = "c:\converted\"
$xlFixedFormat = "Microsoft.Office.Interop.Excel.xlFixedFormatType" -as [type]
$excelFiles = Get-ChildItem -Path $path -include *.xls, *.xlsx -recurse
$objExcel = New-Object -ComObject excel.application
$objExcel.visible = $false
foreach($wb in $excelFiles)
{
$filepath = Join-Path -Path $path -ChildPath ($wb.BaseName + ".pdf")
$workbook = $objExcel.workbooks.open($wb.fullname, 3)
$workbook.Saved = $true
"converted $wb.fullname"
$workbook.ExportAsFixedFormat($xlFixedFormat::xlTypePDF, $filepath)
$objExcel.Workbooks.close()
#get rid of conversion copy
#Remove-Item $wb.fullname
}
$objExcel.Quit()