IT

Windows標準機能で、複数ExcelファイルをPDF化する方法

こんな人にオススメ
  • 複数のExcelファイル(xlsx/xls)をPDFにする必要がある。
  • 1ファイルずつPDFにするなんて効率が悪すぎる。
  • ダブルクリックだけで、自動的にPDF化してくれる方法を探している。

  • 使用PCはWindows10である。
  • PowerShellが使用可能である。
  • ファイルが1ファイルの場合は動作しません。

使用手順

Githubからファイルをダウンロードします。

①Clone or downloadをクリックします。

②『Download ZIP』をクリックします。

③解凍ソフトで解凍すると、2ファイルがあることを確認します。

 

④PDFにしたいフォルダと同じ階層か下のフォルダに配置します。

※本手順では、スクリプトファイルをフォルダの上に持ってきております。

⑤『Convert-excel_pdf.bat』を右クリック→『開く』を押します。

⑥以下の画面が立ち上がります。画面が閉じるまで、待ちます。

⑦ExcelファイルがPDF化されていることを確認します。

コードの内容

■batchファイル(Convert-excel_pdf.bat)
powershell -ExecutionPolicy RemoteSigned -File .\Convert-excel_pdf.ps1

■Powershellのコード(Convert-excel_pdf.ps1)

#実行パスを取得
[string]$DirectoryPath = Split-Path $PSCommandPath

#拡張子の指定
$FileExtention = “*.xls*”

#指定拡張子のフルパスを取得
$List = Get-ChildItem -Path $DirectoryPath -Recurse -Include $FileExtention
$FileString = $List | Select-object -Property FullName

#取得したファイル数
$FileCount = $FileString.Length

#初期値
$Count = 0

While ($Count -lt $FileCount ) {

#1ファイルづつ処理する
$FullFileName = $FileString[$Count].Fullname

#フォルダパスとファイル名を取得
$FolderName =Split-Path $FullFileName -Parent
$FileName = [System.IO.Path]::GetFileNameWithoutExtension($FullFileName)

#PDF作成後のパスを作成
$PDFFiilePath = $FolderName + “\” + $FileName + “.pdf”

$ExcelApplication = New-Object -ComObject Excel.Application
$ExcelWorkbook = $ExcelApplication.workbooks.open(“$FullFileName”)
$ExcelWorkbook.ExportAsFixedFormat(0,”$PDFFiilePath”)
$ExcelApplication.Workbooks.Close()
$ExcelApplication.Quit()

#カウントアップする
$Count++
}

ABOUT ME
みるみる
みるみる
【日々人生をおもしろくするには!?】をモットーに生きてます。 34歳のIT企業に勤めるサラリーマンです。 『メンタル』:心理学の論文等を調査し、生活に使えるスキルを高める。 『時短、IT』:効率化やITを使った自動化・手間の削減 『睡眠』:早起き大好き・ 『ダイエット』:細マッチョを目指して、健康的に食事と運動を。