【Google Apps Script(GAS)】大量シートを一括でPDF変換する方法【業務効率化】
Googleアプリ操作の自動化が簡単にできるGoogle Apps Script(GAS)
これを抑えておけば業務効率がグッとアップします🙆♀️
今回はスプレッドシート内の複数シートを一括でPDF変換する方法解説しました!是非これを機会にGAS習得しちゃいましょう~~!
◎動画はこちら
◎スクリプト
function myFunction() {
//スプレッドシートを取得
var ss = SpreadsheetApp.getActiveSpreadsheet();
//スプレッドシートIDを取得
var key = ss.getId();
//スプレッドシート内すべてのシートを取得
var sheets = ss.getSheets();
//tokenを取得
var token = ScriptApp.getOAuthToken();
//格納フォルダを取得
var folder = DriveApp.getFolderById("★フォルダIDを記載");
//ファイル内の各シートに対して繰り返し
sheets.forEach(function(sheet){
//シートIDを取得
var gid = sheet.getSheetId();
//シートURLを生成
var url = "https://docs.google.com/spreadsheets/d/" + key + "/export?gid=" + gid + "&exportFormat=pdf&format=pdf";
//urlfetchする際のoptionsを宣言
var options = {
headers:{"Authorization":"Bearer " + token}
}
//fetch
var response = UrlFetchApp.fetch(url,options);
//fetchのレスポンスをblobクラスとして取得
var blob = response.getBlob();
//取得したblobクラスに名前を付ける(今回はシート名をそのまま使う)
blob.setName(sheet.getName());
//格納フォルダにファイルを生成
folder.createFile(blob);
//待機
Utilities.sleep(6000); //429エラー回避のためsleep
});
}
GASの基礎学習にはUdemyがおすすめです!(徹底解説してます!)
この記事が気に入ったらサポートをしてみませんか?