非IT企業に勤める中年サラリーマンのIT日記

非IT企業でしかもITとは全く関係ない部署にいる中年エンジニア。唯一の趣味がプログラミングという”自称”プログラマー。

PowerShellでExcelシートを印刷する方法

   

PowerShellでExcelシートを印刷することができます。前回のPowerShellでExcelファイルを操作する方法と基本形は同じで途中に印刷するコードが入っているだけです。

$excel = New-Object -ComObject Excel.Application
$excel.Visible = $false
$book = $excel.Workbooks.Open("C:\...\Book1.xlsx")
$sheet = $excel.Worksheets.Item("Sheet1")

#開始ページと終了ページ、部数を指定して印刷
#開始・終了ページを指定しないと全シートが印刷されてしまう
$From = 1 #開始ページ
$To = 1 #終了ページ
$Copies = 1 #部数
$book.PrintOut.Invoke(@($From, $To, $Copies))

# 閉じる
$book.Close()
$excel.Quit()
#↓これ忘れずに。$excel.Quit()だけではプロセスは落ちない。
[void][System.Runtime.InteropServices.Marshal]::FinalReleaseComObject($sheet)
[void][System.Runtime.InteropServices.Marshal]::FinalReleaseComObject($book)
[void][System.Runtime.InteropServices.Marshal]::FinalReleaseComObject($excel)
 

 

 

スポンサーリンク

 - Excel, PowerShell