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

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

【GAS】Googleドライブ内の複数のドキュメントファイルを一括でPDF化して指定フォルダに保存する方法

   

Googleドライブの特定フォルダにたくさんのドキュメントファイルがあったとして、これを一括でPDFに変えるGASプログラムを作ったので紹介します。僕の場合は主に名刺をGoogle Keep上で撮影して文字抽出→Googleドライブに保存という方法で名刺管理しているのですが、会社でGoogleドライブが見れないのでPDFにして送っています。その際に複数ファイルを一括で変換できるようにしたわけです。

まずはドキュメントファイルが保存されているフォルダIDを控えておきます。下図赤枠の文字列です。

 

 

次にPDF化したファイルを保存するフォルダのIDです。

この2つのIDを以下のソースコードの2行目、3行目に書いて以下のプログラムを実行すると、一挙に名刺がPDF化されて指定フォルダに保存されます。

//ドキュメントフォルダID
const docId = '(ドキュメントフォルダID)';
//保存するフォルダID
const folderId = '(保存するフォルダID)';

function toPDFs() {
  let doc_Folder = DriveApp.getFolderById(docId);
  let pdf_Folder = DriveApp.getFolderById(folderId);

  files = doc_Folder.getFiles();
  while(files.hasNext()) {
    var buff = files.next();
    // var attr = '???';
    try {
      var doc  = DocumentApp.openById(buff.getId());
      let pdf_name = buff.getName() + '.pdf';
      pdf_Folder.createFile(doc.getAs("application/pdf")).setName(pdf_name);
      console.log('OK: ' + buff.getName());
    }catch(e){
      console.log(buff.getName());
      console.log(e);
    }
  }
}
 

 

スポンサーリンク

 - Google Apps Script