初心者でも簡単!Google Apps Scriptでドキュメントを取得して表示する方法

★気に入ったらシェアをお願いします!

document

みなさん、こんにちは!
タカハシ(@ntakahashi0505)です。

さて、Google Apps Scriptでメールマガジンを送るシステムを作っています。

前回はGmailを操作してメールを送る方法についてお伝えしました。

初心者でも簡単!Google Apps ScriptでGmailを操作してメールを送る方法
Google Apps Scriptでメールマガジンを送るシステムを作りたいと思います。シリーズ初回の今回は、Google Apps ScriptでGmailを操作してメールを送る方法です。

今回はうって変わってGoogle Apps Scriptでドキュメントを取得する方法についてお伝えしたいと思います。

Gmail、Googleドキュメント、スプレッドシートなどGoogleサービスをじゃんじゃん活用しますよ!

では、さっそく行ってみましょう!

なぜドキュメントを操作するか?

メルマガシステムの全体の方針をいったん整理しておきますね。

  1. スプレッドシートに送信先メールアドレスのリストを作る
  2. ドキュメントに毎回送信するメルマガの内容を作成する
  3. Gmailでスプレッドシートのメールアドレスのリストにドキュメントの内容を送信する

こんな流れです。

スプレッドシートのいずれかのセルにメルマガの内容を書いてもいいのですが、書きづらいですし、管理もしづらいので、ドキュメント1つに対してメルマガ1つを対応させていく運用をしていきたいと思います。

ということで、ドキュメントを使います!

ドキュメントもGoogle Appsですから、Google Apps Scriptで操作することができるわけですね。

ドキュメントを取得してログに出力するスクリプト

今回はドキュメントを取得してログに出力するスクリプトを作成してみます。

ドキュメントを作成

まずテスト用として新規のドキュメントを作成します。

Googleドライブの「新規→Googleドキュメント」です。

Googleドライブから新規ドキュメントを作成

ドキュメント名を「ドキュメントテスト」として本文を適当に記入しました。

新規のGoogleドキュメント

で、実はこのドキュメントのURLアドレスなのですが

GoogleドキュメントのドキュメントID

https://docs.google.com/document/d/ドキュメントID/edit

この超長い文字列の部分がドキュメントIDという部分でして、後でドキュメントをスクリプトから取得するときに使いますのでコピペしておいて下さいね。

新規スクリプトを作成

それではスクリプトを作成していきます。

今回はスプレッドシートは使いませんので、Googleドライブから直接新規スクリプトを作成します。

「新規→その他→Google Apps Script」とすればOKです。

Googleドライブから新規スクリプトを作成

スクリプト名は「ドキュメントテスト」、ファイル名を「main.gs」、関数名を「logDoc」としました。

新規のGoogle Apps Script

ドキュメントを取得するスクリプト

スクリプトエディタで以下スクリプトを入力します。ドキュメントIDの箇所は、先ほど取得したドキュメントIDを入力してくださいね。

超短いですね。

openByIdでドキュメントを取得する

まず、ドキュメントIDを指定してドキュメントを取得する場合は

DocumentApp.openById(“ドキュメントID”)

とします。これを変数に格納することで、ドキュメントをオブジェクトとして取り扱うことができるようになります。

getNameでタイトル・getBodyで本文を取得

また、取得したドキュメントのタイトル、また本文を取得する場合はそれぞれ

documentオブジェクト.getName()
documentオブジェクト.getBody().getText()

とします。

getBodyメソッドはdocumentオブジェクトからドキュメント本文をつかさどるBodyオブジェクトを取り出します。getTextメソッドはそこからピュアな文字列要素を取り出すメソッドです。

Logger.logでログ出力をする

Logger.log(内容)

これは、ログ画面に内容を出力する命令です。VBAであればDebug.Printと似たような使い方ですね。

ドキュメントを取得してログ画面に出力する

以上のスクリプトを実行してみますと、まずドキュメントの承認を求められますので許可してあげて下さい。

Googleドキュメントの承認が必要

Googleドキュメントへのリクエストを許可

その後、なんとも言わないのですが、「表示→ログ」とします。メニューに記載のある通り、ショートカットキー Ctrl + Enter でもOKです。

スクリプトエディタでログを表示

するとログの画面が表示され、無事にドキュメントのタイトルと本文が表示されているのがわかります。

ログにドキュメントのタイトルと本文を表示

このドキュメントの本文を少し加工をして、前回お伝えしたようにGmailに送れば、Googleドキュメントで用意した本文をメールで送信するプログラムが実現できます。

まとめ

以上、Google Apps Scriptでドキュメントを取得する方法についてお伝えしました。

ドキュメントIDさえわかれば自在に取得できる、ということを覚えておいて頂ければと思います。

次回はこのドキュメントの本文をメルマガっぽい内容にして、社名や宛名などを都度差し込めるように組んでいきたいと思います。

Google Apps Scriptでスプレッドシートのリストをもとに宛名を差し込んだメール本文を作る
Google Apps Scriptで簡単メールマガジンシステムを作成しています。今回はスプレッドシートのリストをもとに、ドキュメントのメール本文内の社名、姓名などを差し込みして出力する方法です。

どうぞお楽しみに!

連載目次:Google Apps Scriptでメルマガシステムを作っちゃおう!

Google Apps ScriptでGmail、スプレッドシート、ドキュメントを連携させて操作することでメルマガシステムが簡単に実現できます。思ったより2割くらい簡単にできますよ。ちなみに無料です…さすがGoogle。
  1. 初心者でも簡単!Google Apps ScriptでGmailを操作してメールを送る方法
  2. 初心者でも簡単!Google Apps Scriptでドキュメントを取得して表示する方法
  3. Google Apps Scriptでスプレッドシートのリストをもとに宛名を差し込んだメール本文を作る
  4. たったの38行!Google Apps Scriptで超簡易メルマガ配信システム
  5. 名刺管理アプリCAMCARDの連絡先リストをスプレッドシートに取り込む
  6. 【GAS】名刺管理アプリの出力データを活用してメルマガ配信リストを自動更新する
  7. Google Apps Scriptのスプレッドシート読み書きを格段に高速化をする方法
  8. Google Apps Scriptのメルマガ配信リスト自動更新スクリプトを高速化する
  9. Google Apps Scriptでスプレッドシートに独自のメニューを追加する方法