ExcelファイルをPDFファイルに変換する時、
1つ1つファイルを開いてPDFとして保存していませんか?
ファイル数が多いと、同じ作業の繰り返しでつまらないですよね
そこで、この記事では複数のExcelファイルをPDFに一括変換する方法を紹介します。
はじめまして、さかいと申します。
インスタで『エンジニアの仕事術』を紹介している自分が解説させていただきます!
変換イメージ
早速ですが、どのようにExcelをPDFに変換するか説明していきます
①PDFに変換したいExcelファイルを選択する
②PDF変換ファイルにドラッグ&ドロップする
③PDF出力完了
これだけでPDFファイルに変換できます!
②の変換ファイルの作り方について説明していきます
変換ファイルの作成
早速、変換ファイルの作り方を解説していきます!
1.メモ帳を起動
2.メモ帳に以下のコードを貼り付け
// ドラッグ&ドロップされたファイルを確認する
if (WScript.Arguments.Count() == 0) {
WScript.echo("ファイルがありません。");
WScript.Quit();
}
// Excelを起動する
var excel = WScript.CreateObject("Excel.Application");
excel.Visible = true;
// 1ファイルずつPDFに変換する
for (var i = 0; i < WScript.Arguments.Count(); i++) {
exportPDF(WScript.Arguments.Item(i));
}
excel.Quit();
WScript.echo("変換終了!");
//---------------------------------------------------------
// ExcelファイルをPDFに変換する
function exportPDF(fname) {
var fs = new
ActiveXObject("Scripting.FileSystemObject");
// フォルダパスを取得
var folderPath = fs.GetFile(WScript.ScriptFullName).ParentFolder
// ファイル名を取得
var fileName = fs.GetBaseName(fname);
// 出力先、ファイル名を設定
var output = folderPath + '/' + fileName;
// Excelを開き、PDFに変換する
var book = excel.Workbooks.Open(fname);
book.ExportAsFixedFormat(0,output ,0,true,false);
book.Close();
}
//---------------------------------------------------------
3.名前を付けて保存を開く
※ショートカット
Ctrl + Shift + S
4.ファイル名、形式を変更して保存
ファイル名は任意で大丈夫です。
①「.」から後ろに「.jse」を入力
②文字コードは「ANSI」を選択
5.完成
ファイルのアイコンが変わっていればOKです
あとは先ほど紹介したように
Excelファイルをドラッグ&ドロップするとPDFファイルに変換できます
シートを指定して1つのPDFファイルに変換
シート番号を指定して、1つのPDFファイルに変換する方法を紹介
2行目と4行目にシート番号を入力します。
// このシートから(From)
var sheetFrom = 2;
// このシートまで(To)
var sheetTo = 4;
// ドラッグ&ドロップされたファイルを確認する
if (WScript.Arguments.Count() == 0) {
WScript.echo("ファイルがありません。");
WScript.Quit();
}
// Excelを起動する
var excel = WScript.CreateObject("Excel.Application");
excel.Visible = true;
// 1ファイルずつPDFに変換する
for (var i = 0; i < WScript.Arguments.Count(); i++) {
exportPDF(WScript.Arguments.Item(i));
}
excel.Quit();
WScript.echo("変換終了!");
//---------------------------------------------------------
// ExcelファイルをPDFに変換する
function exportPDF(fname) {
var fs = new
ActiveXObject("Scripting.FileSystemObject");
// フォルダパスを取得
var folderPath = fs.GetFile(WScript.ScriptFullName).ParentFolder
// ファイル名を取得
var fileName = fs.GetBaseName(fname);
// 出力先、ファイル名を設定
var output = folderPath + '/' + fileName;
// Excelを開き、PDFに変換する
var book = excel.Workbooks.Open(fname);
book.ExportAsFixedFormat(0,output ,0,true,false,sheetFrom,sheetTo,false);
book.Close();
}
//---------------------------------------------------------
実行すると、2〜4シートだけがPDFに変換されます
まとめ
いかがでしたか。
けっこう簡単にPDFファイルに変換できますよね。
他にもこのようなツールやExcelマクロを紹介していく予定なので、
こういう機能が欲しい!などリクエストがあればインスタのDMやコメントにどしどし送ってほしいです。
力になれるように頑張らせていただきます!