超簡単!スプレッドシートをPDF化してメール送信で共有する方法!

目安時間 11分
プロフィール:毎日朝7時に自宅を出て21時に帰宅する、ブラック企業の営業職!時間がない!!が口癖だったが、唯一の救いはスマホを持っていたこと。スマホを使って副業を開始して1年でたったころには年間50万を稼ぎ出した。

独自で外注化戦略にチャレンジし、試行錯誤の末外注スタッフさん100名以上管理することができるようになりました。そこから自分で書かないkindle書籍の出版方法を確立。現役でブラック企業で働きながら、スマホを使っての外注管理・SNS戦略・Youtubuなどを駆使して展開中。移動の多い営業職なら、時間の使い方さえ覚えてしまえば、スキマ時間だけで情報発信できちゃいます。

時間がないが口癖の私が行っている唯一無二の方法、外部パートナーと連携した仕組化、ゼロに近いぐらい時間がなくても副収入化を実現しました。超忙しい営業職の会社員の僕が『最速で』実績を作るために行った0⇒1戦略の秘密と行動力の出し方「人生が変わる行動力」を出版中(メルマガ登録で無料購読可能)。情報発信で稼ぐ方法やこれまでのノウハウをメルマガ講座にて無料配信中

 

Googleスプレッドシート(以下スプレッドシート)をそのまま共有する事はできますが、どこでも誰とでもあらゆる端末で気軽に見られるPDF形式で共有したい時があるのではないでしょうか。

 

PDFはスプレッドシートのメニューからマニュアルでも作成できますが、少しでも手間を減らすためにスクリプトを書いて実現できます。

 

スクリプトを書くなんて小難しいのでチョット面倒くさいですよね。

 

でも色々なところで少しずつ時間の節約をしていく事で大きな時間を生み出し、別の事にその時間を有効活用していきましょう。 

 

今回は、10数行程度のGAS(Google Apps Script)で実現してみましょう。

 

PDFの作成

 

PDFはマニュアルで次のように作成できます。

 

スプレッドシートのメニューバーより、ファイル>ダウンロード>PDFドキュメントで設定を確認し、エクスポートボタンをクリックすればPDFがローカルのダウンロードフォルダに生成されます。

 

GASスクリプトで一発処理

 

ただこのようにPDFを生成するだけであれば通常問題なく出来ると思います。

 

これをGASのスクリプトを用いて一発で処理してみましょう。

 

同時にGoogleドライブに保存しメール送信もやってしまいます。

 

スクリプトの記述(張り付け)

 

以下のスクリプトをエディターに張り付けてください。

 

念のためGoogleスプレッドシートからスクリプトエディタの出し方は、メニューバーのツール>スクリプトエディタと辿ります。

 

 

function createPdf(){

 

const folder = DriveApp.getFolderById('##################################');

var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();

var sheet = spreadsheet.getSheets()[0];

 

var pdfname = "スプレッドシート.pdf";

var pdf = spreadsheet.getAs('application/pdf');

SpreadsheetApp.getUi().alert("PDFをメールで送ります");

 

folder.createFile(pdf).setName(pdfname);

var email = Session.getActiveUser().getEmail();

var to = "**.....*@***....*****";

 

var subject = "納品スケジュール";

var body ="スケジュールを添付しましたので確認願います。";

GmailApp.sendEmail(to,subject,body,{attachments: pdf})}

 

 

[各コマンドの参考元:Google Developers https://developers.google.com/apps-script

 

スクリプトの解説

 

一行一行確認していきましょう。

 

function createPdf(){      

//①シート情報一覧をPDFに変換する プロシージャをcreatePdf()として定義

 

const folder = DriveApp.getFolderById('##################################');

//②フォルダIDを指定      

 

   var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();    

//③シートのIDを取得-1

 

var sheet = spreadsheet.getSheets()[0];    

//④シートのIDを取得-2

 

var pdfname = "スプレッドシート.pdf";      

//⑤シートの名前を取得

 

   var pdf = spreadsheet.getAs('application/pdf');   

//⑥PDFに変換

 

   SpreadsheetApp.getUi().alert("PDFをメールで送ります");    

//⑦スプレッドシート上にポップアップメッセージを出す

 

  folder.createFile(pdf).setName(pdfname);          

//⑧指定したフォルダにPDFファイルを生成

 

   var email = Session.getActiveUser().getEmail();    

//⑨作成したPDFファイルをメールに添付して送る

 

 

var to = "**.....*@***....*****";   

//⑩送付するメールアドレスを書き込む

 

var subject = "納品スケジュール";   

//⑪タイトルに名前をつける

 

var body ="スケジュールを添付しましたので確認願います。";    

//⑫メール本文への記述内容を書く

 

GmailApp.sendEmail(to, subject, body, {attachments: pdf}) }  

//⑬PDF添付したメールを送る

 

 

スクリプトの実行

 

実行ボタンをクリックして何秒かするとスプレッドシート上にポップアップメッセージが出現し、OKボタンのクリックを催促されます。

 

OKボタンをクリックして、指定したフォルダにPDFが作成され且つメール送付が終了します。

 

成功すればの話です。

 

上手くいかなかった場合

 

スクリプトの記述(張り付け)からコピペして、もしそのまま実行するのであれば次のようなエラーが出ます。

 

 

const folder = DriveApp.getFolderById('##################################');

 

の###..の部分にフォルダのIDを入れて下さい。

フォルダのIDって何を入れればいいの?

 

はい、Googleドライブあるいはドライブ下のフォルダのURLのfolders/以下の部分の緑色部分です。

https://drive.google.com/drive/folders/*********************************

 

メールアドレスも入れましょう。

 

つまりスクリプト青文字部分2箇所を入れ替えて下さいね。

 

事前にGoogleドライブ下にフォルダを作成しておきましょう。

 

上手くいった場合

 

うまく実行できた場合は指定フォルダにPDFファイルが作成されていて、且つGメールの送信済みフォルダにメールがあるはずです。

 

送信先としてGメール以外でも送信できるので先ずは試しに自分の別メールへ送ってみましょう。

 

又、スクリプト中の緑色部分の文は好きなように変えてみてくださいね。

 

 

まとめ

 

いかがだったでしょうか? 

うまく動かせたでしょうか?

 

場合によっては、プログラムが途中でとまってしまい実行に失敗する事もあるでしょう。

 

プログラムは上から順番に実行されるので、必ず止まってしまう所で何らかの原因があるはずです。

 

上手くいかなかったら、その部分の何が問題なのか不明であれば先頭に//を加えてコメントアウトするなり別のコマンドに変えてみるなりしてみましょう。

 

今回ご紹介したものでさらに細かな機能を追加したいなどお思いであれば、

コマンドスクリプトは色々な種類があるので色々試して命令を変えて、是非ともご自身の目的にあうプログラムに発展させてみて下さい。

 

超ブラック企業リーマンの副業10万円物語!

激務リーマンのゆうたくと申します。

で、あんた誰ですか?ってなると思いますので
簡単に自己紹介をさせて頂きます。

愛知県名古屋市生まれ・育ちの
ブラック企業勤めの会社員です。
時間がなくて、超ハードです。

たいした才能も特技もない
面倒臭がりのダメダメ人間で、いつも忙しいとか
時間がないが口癖のブラック企業勤めの激務リーマン僕が、スキマ時間を使って10万以上以上稼ぐことに成功しました!

正直、だれでもやりゃできちゃうと思います。

 

スキマ時間でも10万稼ぐのなんて方法を

知ってるか知らないかだけの単純なことだよ?

 

10万円物語ってなんのことだ?

 

人生変わるべ??

 

無料プレゼントの電子書籍の感想待ってるよ

ブラック企業勤めの激務サラリーマンのわたしが

たったの3か月で実践できた

10万円の作り方が知りたきゃココ!

↓↓↓↓↓↓

コメントフォーム

名前 

 

メールアドレス 

 

URL (空白でもOKです)

 

コメント

トラックバックURL: 
プロフィール

失敗ばかりの人生だったけど

その失敗談を惜しみなく発信します

ブ○ック企業の営業職。

国内海外各地へ出張多数

スマホ1つで副業開始!

パソコン苦手でも成果が出るまでの道筋を発信!

外注さん100人以上雇ってます。

kindle出しました。

詳しいプロフィール


<人気ブログランキング>
応援よろしくお願いします

カテゴリー
ツイッターはこちら
スマホぴっくはこちら