見出し画像

GAS(Google App Script)の使い方|スプレッドシートのデータを基にドキュメントを自動生成する方法

「スプレッドシート内のデータを自動でドキュメントにしたい!」
「GASで業務効率化ができるって聞いたけどよくわからん」
「非エンジニアでも簡単にできる方法教えて!」

本記事ではこのような方を対象に、GAS(Google App Script)を使ってスプレッドシート内のデータを基にドキュメントを自動生成する方法をご紹介します。

■本記事で分かること
GASを使ってスプレッドシート内のデータを基にドキュメントを自動生成する方法

■本記事の信頼性
私は、本業でChatGPTなどのAIツールを活用して効率化を実現し、ほぼ毎日定時で帰宅。家族との充実した時間を確保している「なおき」といいます。

AIと全く無縁の体育系で文系出身(数学Ⅱで終わりました)の私でもできる時短術をわかりやすく説明できるよう、Xなどを活用して情報発信しています。

この記事を読んでくださった方々が1分でも早く帰れることを願い、今回はGASを使ってスプレッドシート内のデータを基にドキュメントを自動生成する方法をご紹介します!


1.Googleスプレッドシートの準備


まずは、Googleスプレッドシートでドキュメント化したいデータを作成します。

ドキュメント化したいデータを作成

今回は1四半期の業績報告について、「タイトル」と「内容」に分けて簡単なセクションに分けて作成しました。

2.GAS(Google App Script)の設定と実行


それでは次にGASの設定に入っていきます。

ステップ1:Apps Scriptを開く

Googleスプレッドシートのメニューバーから
「拡張機能」→「Apps Script」を選択します。

赤枠をクリック

ステップ2:コードの入力

Apps Scriptが開いたら、デフォルトで入力されている部分のコードを削除してください。

赤枠内を削除

同じところに以下のコードをコピペします。

function generateDocument() {
  // スプレッドシートのデータを取得
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  var dataRange = sheet.getDataRange();
  var values = dataRange.getValues();
  
  // ドキュメントを作成するための空の配列
  var documentContent = [];
  
  // データの行数分ループ
  for (var i = 0; i < values.length; i++) {
    // タイトルと内容を取得
    var title = values[i][0]; // A列にタイトルがある場合
    var content = values[i][1]; // B列に内容がある場合
    
    // タイトルと内容がある場合のみドキュメントに追加
    if (title && content) {
      // ドキュメントに追加する形式に整形して配列に追加
      documentContent.push(title + ": " + content);
    }
  }
  
  // ドキュメントを作成
  var doc = DocumentApp.create('自動生成ドキュメント');
  
  // ドキュメントに内容を書き込む
  var body = doc.getBody();
  for (var j = 0; j < documentContent.length; j++) {
    body.appendParagraph(documentContent[j]);
  }
  
  // ログにドキュメントのURLを出力
  Logger.log('ドキュメントが作成されました: ' + doc.getUrl());
}

このコードは、指定されたスプレッドシートからデータを取得し、そのデータを基にGoogleドキュメントを自動作成することができます。

作成するドキュメントの名前を指定したい場合は「自動生成ドキュメント」の部分を書き換えて下さい👇

  // ドキュメントを作成
  var doc = DocumentApp.create('自動生成ドキュメント');

実際にコピペしたコードは以下のようになります。
修正後は必ず保存マーク💾を押してください。

ステップ3:実行及び権限の承認

保存出来たら、「▷実行」の部分をクリックして関数generateDocumentを実行します。

実行すると権限の承認を求められるので、以下の画像の赤枠部分をクリックしていってください。

これで権限の承認が完了です。

完了すると、以下のようにログが出てくるはずです。

ログの状況

「ドキュメントが作成されました」と通知があり、作成されたドキュメントのURLが出力されていますね。

3.自動作成されたドキュメントの確認

ここまでの作業が終了したら、作業していたスプレッドシートと同じフォルダ内に新たなドキュメントが生成されているかどうかを確認してください。

生成されたデータの様子

データの中身を確認すると…

自動生成されたドキュメントの中身

無事、スプレッドシートの内容がドキュメントに反映されました!

以上で作業は終わりです!
お疲れ様でした!

4.まとめ

今回は、「GASを使ってスプレッドシート内のデータを基にドキュメントを自動生成する方法」をテーマに紹介しましたが、いかがだったでしょうか?

  1. ドキュメント化するGoogleスプレッドシートの準備

  2. GAS(Google App Script)コードの設定

  3. GASの実行

上記の内容が実行できれば、スプレッドシートのデータを基にドキュメントを自動生成できるようになります!

ただ、ご覧になった通りスプレッドシートの中身をそのままドキュメントに転記されても正直使い勝手が悪いです。

表形式とかで出力してくれたらいいのに…と思ったそこのアナタ!

GASコードをカスタマイズすれば表形式での出力も簡単にできるようになりますよ!

実際に作ってみたのがコチラ👇

表形式で出力した場合

このように、ご自身の好みに合わせたカスタマイズができれば、かなり効率的な作業につなげることができるので、是非実践してみて下さい!

「自分でカスタマイズする方法が分からない…」
「そもそもGASコードなんて読めへんわ!」
「簡単にできる方法を教えて!」

そんな方のために、自分に合ったGASコードを作成するためのChatGPTプロンプト集を作成しました!

実際、このプロンプト集を使えば先ほどの表形式にするためのGASコードはほんの1分程度で作成できますので是非使用してみて下さい!

今回紹介した内容で皆さんの業務が少しでも効率化できれば、スキ、SNSでの紹介をしていただけると大変励みになりますので、何卒よろしくお願いします!

このほか、AI×時短術の知識をX(旧Twitter)で紹介していますので、是非フォローしてください!


この記事が参加している募集

AIとやってみた

この記事が気に入ったらサポートをしてみませんか?