Google Apps Scriptの書籍を執筆するために仕込んだWordマクロのツールを紹介します


ax

photo credit: Oscar F. Hevia Hacha via photopin (license)

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

さて、前回こちらの記事で「詳解! GoogleAppsScript完全入門 ~GoogleApps & G Suiteの最新プログラミングガイド~」を書き上げるのに、どれくらい時間がかかったのかについてお伝えしました。

GAS本を書き上げるのに、どれだけの文字数書いて何時間かけたのか
「詳解!GoogleAppsScript完全入門」が発売されることになりました。この記事では本書を書き上げるのに、どれだけの文字数書いたのか、またどれだけの時間をかけたのか、ババンと晒したいと思います。

今回は2作目ということで、私もちょっと学習をしました。

執筆の効率を上げるために、WordマクロとPythonでいくつかのツールを仕込んでいたのですよ。

準備って大事です。

ということで、今回はその第一弾として、GAS本の執筆のために、どんなWordマクロのツールを仕込んだのかを紹介したいと思います。

スポンサーリンク

木を切るなら、まずは斧を研ごう

前作「ExcelVBAを実務で使い倒す技術」は、デビュー作ということもあり、どうしても行き当たりばったりになってしまいました。

挙句には、本業+ブログ+書籍執筆のハードなスケジュールがたたって、身体にいろんな影響が出てしまいました。

体が資本!肋軟骨ひびと帯状疱疹から得たアラフォーフリーランスとしての3つの教訓
肋軟骨にひびが入ったり、帯状疱疹ができたりして、本調子ではない状態が1カ月ほど続いておりました。アラフォーのフリーランスの方と未来の自分自身が同じような目にあったとき役立つと信じ、記録を残しておきます。

まあ、なんかそんな粗削り感も本の内容とマッチして魅力的な一作になったような気もしますが、そんなに何度も身体を壊すわけにはいかないので、次の話があるときには何か対策を…と考えていました。

リンカーンの言葉を借りるなら

木を切るのに6時間使えるなら、そのうち最初の4時間は斧を研ぐために使う

ですよ。

準備が大事なのです。

Word VBAを駆使してGAS本を書くこと

まず、第一に考えていたのはWord VBAです。

調べたり、整理したりという時間も当然あるのですが、書籍執筆で多くの時間をかけているのは「Wordで入力をしている時間」なのは明らかです。

近視眼的なメリデメを考えると、正直Word VBAはExcel VBAと比べて圧倒的に人気がありませんので、頑張りどころではありません。

ただ、GAS本464ページをWordで書くという事実がまずあります(結果的に400時間かけていますし)。

中長期的には、いくつかの狙いがありました。

Word VBAをやるべきだった理由

まずは、GAS本のDocumentサービスを説明する上で、Wordマクロの理解が役に立つだろうとう点です。

Googleドキュメントの文書構造ははWordのそれと非常に似ていますので、非常に参考になりました。ポイントは「段落」です。

これを味方につけられると、「文書」の扱いが一気に楽になります。

二つ目は、Excel VBAユーザーが次に覚えるスキルとして即戦力になりえるという点です。

正直なところ、Excel VBAである程度できるようになったら、Excel VBAのマニアックなところを掘っていくよりも、さっさとWordマクロなどの他アプリケーションの操作方法を覚えたほうが有効な場合が多いと考えています。

当然、Word文書の構造をちゃんと理解する必要はありますが、VBAとしての文法やオブジェクトの考え方は一緒ですから、それほど苦はなく覚えられます。

最後は「書くスキル」が今後重要になっていくだろうということです。

書くために使うアプリケーションの選択肢はたくさんありますが、一般ビジネスでいうとGoogleドキュメント、Wordこのあたりのプログラミングを「武器」として加えておいて損はないと思います。

GAS本を書くために準備したWord VBAのツール

GAS本を執筆するためにWord VBAで作成したツールを紹介していきます。

装飾指示の挿入ツール

書籍を構成する要素は、単純な文章だけではありません

図表、ソースコード、囲みなどいろいろな要素があって、囲みでもPointなのか、Memoなのか、実行結果なのかといったところで、適用するデザインが変わってきます。

文章とともに、どこからどこまでがその装飾の適用をしてほしいのかという指示を入れていかないといけないのですが、その装飾指示を挿入するツールを作成しました。

適用範囲を選択した状態で、Alt + I でフォームを呼び出し、適用したい装飾の種類を選択するというものです。

GAS本執筆に使用したWordマクロのツール

自分でいうのもなんですが、便利です。

作り方は以下の記事などを参考ください。

Word VBAでフォームを表示&コマンドボタンでマクロを実行する方法
Word VBAで入力を便利にするマクロの作り方を初心者向けということでお送りしています。今回は、Word VBAでフォームを表示する方法、またコマンドボタンでマクロを呼び出す法についてお伝えします。

カーソル移動のショートカット

ずっと書き足していくだけなので、過去書いた部分に移動するなんてないとお思いかもしれませんが、全然そんなことはありません。

人っていうのは忘れやすい生き物で、昨日書いたことすらすっかり忘れちゃいます。ましては、一週間前のことなんて…

ということで、書籍執筆をする上で、文書の前後への「移動」というのは、かなりの頻度で行われるのです。

それで、Wordはナビゲーション機能が優秀なのですが、やっぱりマウスだけでなく、キーボードだけでビュンビュン移動したくなります。

執筆する内容によって、どのような単位で移動するのが多いのかというのはあると思うのですが、最も利用したのは、以下の記事で紹介している見出し単位での移動です。

Word VBAで見出し単位のカーソル移動をショートカットキー化する方法
Word VBAで便利なカーソル移動のショートカットキーを作成する方法をお伝えしています。文書の先頭または末尾に移動しきったときの挙動を追加しつつ、見出し単位のカーソル移動をショートカットキー化していきます。

Alt + [Alt + ] で前後の見出しに移動できるように設定をして活用をしていました。

ページ数・文字数のカウント

書籍を作る際に、だいたいのページ数などを想定してから着手します。

大型版なのか、A5判なのかも想定しますから、1ページあたりの文字数もだいたい決めておきます。

Wordはページ設定をすることで、1ページあたりの行数と、1行あたりの文字数を決めることができます。

Wordのページ設定

ですから、今書いているあたりであれば、だいたい何ページであるかというのは、ある程度はわかりますし、それであれば「今、だいたい何ページであるべきか」と比較することができます。

以下の記事は、エクセルVBAでWord文書を操作するというものですが、書き出しはExcleシートですが、内容はほぼWord VBAといっていいものです。

エクセルVBAでフォルダ内のWord文書のページ数・文字数などをリスト化する
エクセルVBAでWord文書の操作をする方法についてお伝えしています。今回は、エクセルVBAでフォルダ内のWord文書のページ数や文字数などの各情報を取得してリスト化するプログラムを作っていきます。

例えば、この内容をWordの文書が閉じたときに自動で書き出す、というようなマクロを仕込んでおけば、常に自動で記録できるようになります。

まとめ

以上、GAS本を執筆するために仕込んだWordマクロの数々についてお伝えしました。

GAS本なのに、Wordマクロってちょっと面白いですよね。

どちらか一方に絞ったほうが学習効率は良いかも知れませんが、両方できたほうが実務の効率を上げるという意味では選択肢が増えますよ。

次回は、GAS本を作成するのに用意したPythonのツールについて紹介をしたいと思います。

どうぞお楽しみに!

書籍「詳解!Google Apps Script完全入門」関連記事

書籍「詳解!Google Apps Script完全入門」に関連して、本書自体や、執筆に関する裏話や出来事、ノウハウ、イベントレポートなどを連載していきます。
  1. 書籍「詳解!Google Apps Script完全入門」発売についてのお知らせ
  2. 書籍「詳解!Google Apps Script完全入門」が12/22に発売!その内容と見どころを紹介します
  3. GAS本を書き上げるのに、どれだけの文字数書いて何時間かけたのか
  4. Google Apps Scriptの書籍を執筆するために仕込んだWordマクロのツールを紹介します
  5. 起業して3年で2冊目の書籍を出版!そして変わってきた「書くこと」の価値ついて
  6. Google Apps Scriptの本がどのように書店に並んでいるのか調べてきた
その他、本書に関する情報を随時更新していきますね。 どうぞお楽しみに!

タイトルとURLをコピーしました