2016.02.05みなさん、こんにちは!タカハシ(@ntakahashi0505)です。Scriptでメールマガジンを送るシステムを作っています。前回はGmailを操作してメールを送る方法についてお伝えしました。Scriptでメールマガジンを送るシステムを作りたいと思います。ScriptでGmailを操作してメールを送る方法です。Scriptでドキュメントを取得する方法についてお伝えしたいと思います。Scriptでメルマガシステムを作っちゃおう!なぜドキュメントを操作するか?メルマガシステムの全体の方針をいったん整理しておきますね。スプレッドシートに送信先メールアドレスのリストを作るドキュメントに毎回送信するメルマガの内容を作成するGmailでスプレッドシートのメールアドレスのリストにドキュメントの内容を送信するこんな流れです。スプレッドシートのいずれかのセルにメルマガの内容を書いてもいいのですが、書きづらいですし、管理もしづらいので、ドキュメント1つに対してメルマガ1つを対応させていく運用をしていきたいと思います。Scriptで操作することができるわけですね。ドキュメントを取得してログに出力するスクリプト今回はドキュメントを取得してログに出力するスクリプトを作成してみます。ドキュメントを作成まずテスト用として新規のドキュメントを作成します。Googleドライブの「新規→Googleドキュメント」です。ドキュメント名を「ドキュメントテスト」として本文を適当に記入しました。実はこのドキュメントのURLアドレスなのですがhttps://docs.google.com/document/d/ドキュメントID/editこの超長い文字列の部分がドキュメントIDという部分でして、後でドキュメントをスクリプトから取得するときに使いますのでコピペしておいて下さいね。新規スクリプトを作成それではスクリプトを作成していきます。今回はスプレッドシートは使いませんので、Googleドライブから直接新規スクリプトを作成します。Script」とすればOKです。スクリプト名は「ドキュメントテスト」、ファイル名を「main.gs」、関数名を「logDoc」としました。ドキュメントを取得するスクリプトスクリプトエディタで以下スクリプトを入力します。ドキュメント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と似たような使い方ですね。ドキュメントを取得してログ画面に出力する以上のスクリプトを実行してみますと、まずドキュメントの承認を求められますので許可してあげて下さい。その後、なんとも言わないのですが、「表示→ログ」とします。するとログの画面が表示され、無事にドキュメントのタイトルと本文が表示されているのがわかります。このドキュメントの本文を少し加工をして、前回お伝えしたようにGmailに送れば、Googleドキュメントで用意した本文をメールで送信するプログラムが実現できます。Scriptでドキュメントを取得する方法についてお伝えしました。ドキュメントIDさえわかれば自在に取得できる、ということを覚えておいて頂ければと思います。次回はこのドキュメントの本文をメルマガっぽい内容にして、社名や宛名などを都度差し込めるように組んでいきたいと思います。Scriptで簡単メールマガジンシステムを作成しています。今回はスプレッドシートのリストをもとに、ドキュメントのメール本文内の社名、姓名などを差し込みして出力する方法です。ScriptでGmail、スプレッドシート、ドキュメントを連携させて操作することでメルマガシステムが簡単に実現できます。思ったより2割くらい簡単にできますよ。ちなみに無料です...さすがGoogle。プランノーツ代表、コミュニティ「ノンプロ研」主宰。ITで日本の『働く』の価値を上げる!」をテーマに、VBA&GASの開発、講師、執筆などをしております。→詳しいプロフィールはコチラ★ご依頼・ご相談はお気軽にどうぞ!→お問い合わせはコチラ★フォロー頂ければ嬉しいです。「コミュニティ+講座」形式で継続性&教え合える環境も提供。!ノンプログラマーがプログラミングスキルを身に着ける支援ををするコミュニティ。セミナー・もくもく会・Facebookグループのサポートで「自らで学び続ける力をつける」支援、「教え合うことで学びの価値を上げる」場の提供をしています。Scriptを使用して、Gmailのスレッドを特定の条件で検索し、スレッドに含まれるすべてのメールを取得してスプレッドシートに書き出す方法についてお伝えします。Scriptでフォーム送信メールからデータを取得してスプレッドシートにまとめるツールを作成しています。今回はスプレッドシートの列データを配列として取得する方法についてお伝えします。Suiteの最新プログラミングガイド~」という本を書きました!本ページでは、本書のお知らせ、書評などの情報を発信していく特集ページです。AppsQUERY関数の基本!別シートのデータからselect句で列を取得する方法GoogleスプレッドシートのQUERY関数を紹介するシリーズ。第二回目は、select句で特定の列を抽出する方法です。1列のみ・複数列・すべての列を抽出する書き方を紹介しています。Appsスプレッドシートのマクロ機能で関数のインポートをする方法とマクロの削除の方法Googleスプレッドシートに搭載されたマクロ記録機能について、初心者向けにその使い方をお伝えしています。今回は作成した関数をマクロとして登録する方法と、マクロを削除する方法についてお伝えしていきます。ScriptGASとVue.jsによるWebアプリでv-forディレクティブを使って繰り返し要素を描画する方法GASとVue.jsでWebアプリケーションを作成する方法をお伝えしています。今回はGASとVue.jsによるWebアプリでv-forディレクティブを使って繰り返しで要素を描画する方法をお伝えします。「コミュニティ+講座」形式で継続性&教え合える環境も提供。詳細・お申込はこちら隣ITを応援する当ブログを「応援したい!」「役に立ったよ!」というお気持ちを、コチラからお支払いただくことができます。日々更新の活力倍増いたします。※PayPalアカウントが必要です。※金額は変更可能です。Platform23HTML・CSS32iPhone・アプリ29Monaca・スマホアプリ開発7PC全般・Windows86PowerPoint・VBA28Python87RPA1VBScript15Vue.js・JavaScript13WEBサービス・クラウド68WordPress・ブログ88Word・VBA42コミュニティ・イベント109セミナーのお知らせ11チャットワーク72データ分析・アクセス解析40仕事・生産性・働き方73動画配信8商業出版21起業・フリーランス72電子書籍・Kindle3運営会社プランノーツは"IT×働き方改革"をお手伝いする会社です。「コミュニティ+講座」形式で継続性&教え合える環境も提供。詳細・お申込はこちら隣ITを応援する当ブログを「応援したい!」「役に立ったよ!」というお気持ちを、コチラからお支払いただくことができます。日々更新の活力倍増いたします。※PayPalアカウントが必要です。※金額は変更可能です。Platform23HTML・CSS32iPhone・アプリ29Monaca・スマホアプリ開発7PC全般・Windows86PowerPoint・VBA28Python87RPA1VBScript15Vue.js・JavaScript13WEBサービス・クラウド68WordPress・ブログ88Word・VBA42コミュニティ・イベント109セミナーのお知らせ11チャットワーク72データ分析・アクセス解析40仕事・生産性・働き方73動画配信8商業出版21起業・フリーランス72電子書籍・Kindle3運営会社プランノーツは"IT×働き方改革"をお手伝いする会社です。Scriptが「V8ランタイム」をサポート!モダンなECMAScript構文が使えるようになった2020.02.072020.02.08GASでコピーしたGoogleスライドのプレゼンテーションを取得する方法2020.02.052020.02.05Facebookページいつも隣にitのお仕事タイトルとURLをコピーしました。