はじめに
複数のWord文書を一括でPDFファイルに変換する方法がないかを探していたら、PowerShellスクリプトを使って同じことをやっている人を見つけました。
とてもナイスな記事でした。複数のWordファイルを一括でPDFに変換する
上記ページのスクリプトは、docxのみを対象としていました。
ぼくは、docファイルも同様の扱いにしたかったため、docファイルとdocxファイルの両方を検索対象に含めるように、スクリプトを一部改良しました。
$word = NEW-OBJECT -COMOBJECT WORD.APPLICATION # docxファイルまたはdocファイルを検索する $files = Get-ChildItem | Where-Object{$_.Name -match "docx$" -or $_.Name -match "doc$"} foreach($file in $files) { try { $doc = $word.Documents.OpenNoRepairDialog($file.FullName) # 拡張子をpdfに変更して保存する $doc.SaveAs([ref] $file.FullName.Replace($file.Extension,".pdf"),[ref] 17) $doc.Close() Write-Host "$($file.FullName)をPDF変換しました" } catch { Write-Host "[ERROR]$($file.FullName)のPDF変換に失敗しました" } } $word.Quit()
使い方
1.上記のソースコードを「word2pdf.ps1」というファイル名で保存します。
2.word2pdf.ps1をWord文書が置かれているフォルダにコピーします。
3.PowerShellを起動し、Word文書のフォルダに移動します。
4.word2pdf.ps1を実行します。