いちばんやさしい?PowerPointVBA

f:id:HiroCom777:20200222181116j:plain

PowerPointVBA

僕がExcelVBAを仕事で使用するようになったのは、もともとExcelで作ったドキュメントを他のプログラムで印刷しているシステムの改良を任されたから。それまでVBAの存在は知りませんでしたが、VBAを知ってそれらの仕事はExcel(VBA)だけで済ませられることを理解しました。その方がシステムの信頼性も高いしメンテナンスも楽です。

以後、大変便利に使用させていただいています。

最近、僕の周りに全く異なる需要が増えていることに気が付きました。プレゼンテーション用ソフトウェアPowerPointを使って人に作業手順を指示するというものです。設定された条件をもとに端末から順番に内容を表示します。毎回条件が違うのでスライドショーで自動表示するわけにも行かないです。これ、やっぱり他のプログラムからPowerPointを操作して表示しています。

同じMicrosoftOfficeの製品であるPowerPointにはVBAが装備されている訳だから、これもPowerPointのみで完結できるんじゃないかと秘かに考えていたのですが、PowerPointVBAは情報が極端に少ない。

と、言う訳で最近出版された『いちばんやさしいPowerPoint VBAの教本』を早速ゲットしました。今回はこの本を紹介してみたいと思います。
著者は『インストラクターのネタ帳』でおなじみの方。僕も結構お世話になっています。
www.relief.jp

いちばんやさしい?

ところがこの本『いちばんやさしい』とうたっているのに内容が全然やさしくないのです。ExcelVBAなどを知らずにこの本を手に取れば確実に挫折すると思います。本書の概要は以下のようになっています。

VBAを使用したPowerPoint資料作りについて説明

 っていうことは、今回の僕の目的(スライドショーの制御とか)はターゲットではないということですね…残念!

・一般的なVBAの本にあるような基本構文は一切なし

 この説明がないと初心者には何のことやらさっぱり。でも、そこら辺のところは同著者の『いちばんやさしいExcel VBAの教本』には書いてあります。VBAの基本構文は同じですので記述を重複させないということは良心的と言えば良心的なのですが、そちらを読むようにとの記述もないみたいです。

・説明の中心はPowerPointのオブジェクト構造について

 これも面食らうと思います。僕も本書で初めて知ったのですがPowerPointVBAにはマクロ記録機能がないのです。従ってPowerPointVBAのコードを記述するには一からキーボードで入力しなければなりません。PowerPointVBAはEXcelVBAよりもオブジェクト階層構造が深いため、オブジェクト構造を詳しく理解しないとコードは書けないとのことなんです。

・ExcelVBAとの違いを詳しく解説

 事あるごとにExcel(VBA)との違いを説明しています。つまり、ExcelVBAについてある程度理解していないと読み進められないということですね。逆にExcelVBAをある程度理解している人にとっては価値のある情報です。以下のような違いが説明されています。
 ・PowerPointVBAにはマクロ記録機能がない
 ・PowerPointはオブジェクトの階層構造が深い
 ・PowerPointはグローバルメンバーのプロパティーが少ない
 ・PowerPointはマクロの実行結果を元に戻す(Ctrl+Z)で戻せる
 ・PowerPointはコーディング時に自動メンバーが表示されるケースが多い
 ・PowerPointはSHIFT+F2でオブジェクトブラウザー表示できるケースが多い
 ・PowerPointはローカルウィンドウで確認できるプロパティーが多い

つまり、入門書ではないということです。まぁ現状PowerPointVBAについて書かれた本が本書しかないので『いちばんやさしい』と言うのはうそではないのかもしれません(笑)

どんな人が読むべきか

 内容自体はわかりやすく記述されていて、僕自身は大変勉強になりました。僕が思うに、この本のターゲットは以下のような人たちです。

・ExcelVBAにある程度理解がある人

 これ必須です。これがないと話になりません。

・ExcelVBAの理解をより深めたい人

 この本でPowerPointVBAを学ぶことによってExcelVBAを客観的に見直すことができて理解を深めることができると思います。

・オブジェクトブラウザーの使い方を勉強したい人

 オブジェクトブラウザーを積極的に使っていくので理解が深まると思います。

で、PowerPointVBAにも興味がある人

表題に物申す!!

ちなみに、著者も以下のサイトで対象読者について言及しています。

www.relief.jp

やっぱり、ExcelVBAをある程度理解している人が対象なんですね。しかし、初心者でPowerPointVBAを勉強しようと思っている人がここを確認する保障など全くないわけです。本屋さんの店先に並ぶわけで、間違えて購入する人は少なからずいるでしょう。著者サイトの記事は丁寧でとても好感が持てますので、タイトルで読者を釣ろうと思っているわけではないと思いますが……

内容はとても有意義な物なのにここだけが残念です。

書籍を執筆することは僕の想像を絶する大変な作業だと思いますが、表題も気を配っていただきたいですね。

ExcelVBAを知っている人にはマジお勧め!!特に学習に行き詰っている人。PowerPointを使っていなくても(PCにインストールされてないといけないけど)理解を深められますよ!!

最後までお付き合いいただき有難うございました。