業務自動化

GASで請求書発行を全自動化した話 — 月8時間の作業がゼロに

2025年5月10日 読了目安 約5分

はじめに

毎月末に繰り返していた請求書作業——スプレッドシートから数値をコピーし、テンプレートに貼り付け、PDFに変換して送信。この一連の作業を Google Apps Script(GAS)で完全自動化 しました。

自動化した作業の全体像

  1. スプレッドシートから当月の請求データを取得
  2. Googleドキュメントのテンプレートに差し込み
  3. PDFに変換してGoogleドライブに保存
  4. 取引先へメール送信

実装のポイント

データ取得

スプレッドシートの特定シートから getValues() で一括取得し、配列として処理します。

const sheet = SpreadsheetApp.getActiveSpreadsheet()
  .getSheetByName('請求データ');
const data = sheet.getDataRange().getValues();

テンプレートへの差し込み

Googleドキュメントのテンプレートをコピーし、プレースホルダーを replaceText() で置換します。

const template = DriveApp.getFileById(TEMPLATE_ID);
const copy = template.makeCopy(`請求書_${month}月_${clientName}`);
const doc = DocumentApp.openById(copy.getId());
const body = doc.getBody();
body.replaceText('{{CLIENT_NAME}}', clientName);
body.replaceText('{{AMOUNT}}', amount.toLocaleString());
doc.saveAndClose();

PDF化とメール送信

const pdf = DriveApp.getFileById(docId).getAs('application/pdf');
GmailApp.sendEmail(email, `【請求書】${month}月分`, '請求書をお送りします。', {
  attachments: [pdf],
  name: 'Pocket-DX'
});

結果

月8時間かかっていた作業が ゼロ になりました。月末の自動トリガーを設定することで、完全ノータッチで処理が完了します。ミスもなくなり、取引先への送付漏れも防止できています。

有留 勇樹

業務自動化エンジニア / Pocket-DX

中小企業向けにGAS・ChatGPT API・kintoneなどを活用した業務自動化を提供しています。まずはお気軽にご相談ください。

この記事の内容を、あなたの職場でも実現しませんか?

GAS・ChatGPT・kintoneを活用した業務自動化について、無料で相談できます。まずはお気軽にどうぞ。