私はブログでよく画像を使います。
写真をそのまま載せることもありますが、だいたいは何かしらの編集をしております。
そして、画像の編集には Powerpoint(パワーポイント) を使用しています。
Powerpoint は言わずと知れたプレゼン用のソフトですが、ブログ用の画像の編集にも十分使えます。
矢印を入れたり、資格で囲ったり、文字を追加したりということができますので。
1、テンプレートファイルを作成しておく
ブログ用の画像編集は頻繁に行うので Powerpoint ファイルのテンプレートを作っています。
以前こちらの記事で紹介致しました↓
ブログに画像を使う人は多いと思います。私も、記事によってはたくさんの画像を投稿します。投稿する画像の編集にはPowerpoint(パワーポイント)を使うことが多いです。1、Powerpoint(パワーポイント)を使う理由画像編集にはペイントやSkitchを使うこともありますが、ほぼPowerpointで処理しています。その理由を挙げたいと思います。使い慣れているなんといってもこれです!昔からPowerpointで資料を作ることが多かったので、使い勝手がよく分かっており操作がさくさく進みます。1つのファイル内に1つの記事で使う画像を全て入れ... ブログ(Wordpress)用の画像編集にPowerpoint(パワーポイント)を使う、画像編集... - My タックスノロジー |
私が自作したテンプレートファイルは以下のようなもので、最初から 10枚のスライドを準備しておき、画像編集のためによく使う記号(矢印、四角、丸)を各スライドに入れ込んであります。
テンプレートの作り方は、
まず、Powerpointで新規ファイルを開いてファイルの中身を作りこみます。私の場合は上記のものを作ってあります。
ファイルができたら「名前を付けて保存」を選択します(Ctrl + S でも可)。
保存場所として、「Documents」の中の「Office のカスタムテンプレート」を選択します。
次にファイル名を入力し、ファイルの種類で「 PowerPoint テンプレート(*.potx)」を選択して保存します。
私は「ブログ用画像編集テンプレート.potx」と名付けて保存してありました。
このようにしておけば、次に Powerpoint を起動した際には、自作のテンプレートを選択できるようになります。
次の図に示した手順①②です。
こうすることで、最初からよく使う記号(矢印、四角、丸)が入ったスライド上で作業を開始することができます。
まず言いたいこととしましては
日頃 Powerpoint を同じ目的で何回も使う人は、テンプレートを作っておくことをお勧めします。
2、フォルダの作成・ファイルの保存作業を楽にするためのマクロ(Powerpoint VBA)
さて、今日は自分自身が日頃のブログ用の画像編集のために Powerpoint を使ううちに、手間を省きたいと思い、
VBA を使って作業改善をしましたのでその点をお話しします。
ブログ記事のためのフォルダ・ファイルの管理
私はブログのために Powerpoint や Excel を使う場合には、これらソフトのファイルを1記事につき1つのフォルダに保存するようにしています。
「ブログ」という名前のフォルダを作ってあり、その中に日々の記事ごとのフォルダを作って各ファイルを保存しています。
それがベストの管理かどうかは別として、現状そのようにしています。
個々の記事のフォルダの名前は先頭に6桁の日付を付けています。
2018年6月12日であれば「180612」と付けます。
そしてその後に、ブログの中身と関連がある名前を付けるようにしています。
こんな感じにです↓
「180612 UiPath と UWSC の比較、メモ帳」
そして、その中に保存する Powerpoint ファイル名も同じ名前にしています。
なお日付については、スニペットツールである PhraseExpress を用いて「ymd」と入力すればその日の日付を6桁で表示するように設定してあります。こうしておけば、いちいち確認して入力する必要はありません。
Windows 用のスニペットツールであるPhraseExpress を使っています。スニペットツールというのは「ショートカットキーで定型文を一瞬で書き出すことができるツール」のことです。例えば、メールを打つときの以下の定型文をショートカットキー「msen」で書き出せるように設定しておけば、キーボードで「msen」と入力するだけで呼び出せます。●● 様 松井会計事務所の 松井元 です。いつもお世話になります。表題の件、 お忙しいところ申し訳ありませんがよろしくお願い致します。以上です。 ──────────────────... 定型文を一瞬で書き出せる Windows 用のスニペットツール PhraseExpress で日時(... - My タックスノロジー |
面倒なフォルダ作成とファイルの保存作業
さて、画像を Powerpoint で編集するために先に説明したテンプレートを使うわけですが、
毎回ファイルを「名前を付けて保存」するために保存先のフォルダを選択する作業をする必要があります。
私は Dropbox を使っていますが、フォルダをたくさん使う方なので保存場所を指定する作業の際に「どこだったっけ?」と場所を探さなければならないことがあります。
その探す作業にイライラすることがあったので、これを省きたいと思いました。
そして、Powerpoint ファイルを作成する前にフォルダを作成していないこともあります。
その場合には、先に Powerpoint ファイルをデスクトップなどの適当な場所に保存しておいて、後でフォルダを作成してからフォルダ内に移動させることがありました。
それも面倒だと思うようになりました。
VBA を使った仕組み
そこでマクロ(VBA) を使ってフォルダ・ファイルの作成と保存の作業を短縮す仕組みを作りました。
スライドの中身は先に示したもの(拡張子 .potx)と同じく、記号(矢印、四角、丸)を入れ込んだスライドを10枚作っておきます。
マクロを入れ込むことができるテンプレートとするためには、拡張子を「.potm」として「Documents」の中の「Office のカスタムテンプレート」に保存しておく必要があります。
さて、今回の仕組みを使った場合作業的には
Powerpoint のテンプレートを開いてマクロ(VBA)を実行すればボックスが出きて、そこにフォルダ名を入力するだけで済みます。
これで↑
・フォルダ名とファイル名を両方付ける作業
・保存先のフォルダを探しながら選択する作業
は無くなります。
劇的にとはいかなかったものの、若干楽になりました。
以下に流れを書きます。
(1)Powerpoint 上で Alt + F8 を押してマクロを選択して実行
作成するマクロは1つだけ(詳細は後ほど説明)なので、これを選択して実行します。
マクロの実行にショートカットキーを割り当てることができれば良かったのですが、Excel や Word と異なり Powerpoint の場合標準ではできなそうです。
(色々手間がかかりそうなのでやりませんでした。)
(2)インプットボックスにフォルダ名を入力
マクロを実行するとインプットボックスが出てくるので、ここにフォルダ名を入力します。
①既にフォルダを作成してある場合
既にフォルダを作成してある場合は、そのフォルダ名を入れます。
フォルダの上で F2 を押してから Ctrl + C を押せばフォルダ名をコピーできます。
それをそのままインプットボックスに貼り付け(Ctrl + V)ます。
そうして「OK」を押せば、そのフォルダの中にフォルダ名と同じ名前のファイルができあがってきます(拡張子は .pptm)。
②フォルダを作成してない場合
フォルダを作成してない場合、インプットボックスに作成したいフォルダ名を入れます。
そうすればその名前のフォルダが作成され、さらにそのフォルダの中にフォルダ名と同じ名前のファイルができあがってきます(拡張子は .pptm)。
3、VBA コード
Alt + F11 で VBE(エディタ)を起動させて VBA コードを書き込みます。
今回の VBA コードの内容を以下に示します。
標準モジュール内に1つのプロシージャ「New_Save」を作ってあります。
全VBA コード
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
Sub New_Save() On Error Resume Next Dim Blog_Folder_Path 'ブログ用フォルダのパス' Dim Folder_Name 'ブログ用フォルダの中に作るフォルダ名' Dim Folder_Path 'ファイルを保存するフォルダのパス' Dim File_Path 'ファイルのパス' Blog_Folder_Path = "フォルダの絶対パス(各自指定要)" Folder_Name = InputBox("フォルダ名を入力してください") If Folder_Name = "" Then Exit Sub 'キャンセルボタンを押した場合は「終了」' Folder_Path = Blog_Folder_Path & "¥" & Folder_Name '入力したフォルダが存在しない場合の処理' If Dir(Folder_Path, vbDirectory) = "" Then MkDir Folder_Path Else End If ActivePresentation.SaveAs Folder_Path & "¥" & Folder_Name & ".pptm" '名前を付けて保存' End Sub |
コード説明
上記コードについて、説明します。
エラーを無視
冒頭で以下のように記述することでエラーが発生しても無視するので止まることはありません。
InputBox 関数
InputBox 関数は入力用のボックス(インプットボックス)を表示させる関数です。
以下のように記述します。
表示されるメッセージとして今回は「フォルダ名を入力してください」と入れてます。
そして、
Folder_Name = InputBox(“フォルダ名を入力してください”)
の部分で入力したフォルダ名を変数 Folder_Name に入れています。
なお、インプットボックスでキャンセルボタンが押された場合には空白(””)を返します。
今回の場合、変数 Folder_Name に空白(””)が入ることになります。
この部分↓
If Folder_Name = “” Then Exit Sub
では、キャンセルボタンが押されたら(変数 Folder_Name が空白だったら)、コードの実行を終了するようにしています。
Dir 関数
Dir 関数はフォルダやファイルが存在するか否か確認する関数です。
フォルダの存在を確認する場合は以下のように記述します。
フォルダ名を絶対パスで指定しなければならないので注意しましょう。
フォルダが
●存在する場合は「フォルダ名」を返し
●存在しない場合は「空白(””)」を返します
MkDir 関数
MkDir 関数は指定したフォルダを作成する関数です。
以下のように記述して使います。
単にフォルダ名を入力した場合は(フォルダパスではなく)現在のフォルダの下に入力した名前のフォルダができ上がってきます。
SaveAs メソッド
名前を付けて保存を行うメソッドです。
以下のように記述して使います。
今回はオブジェクトとしてアクティブなパワポファイルを表す ActivePresentation を指定しています。
ファイルパスはインプットボックスに入力したフォルダの中にフォルダ名と同じファイル(拡張子 .pptm)が作成されるようにしていしています。
ActivePresentation.SaveAs Folder_Path & “\” & Folder_Name & “.pptm” ‘名前を付けて保存’
4、まとめ
Powerpoint(パワーポイント)VBA でフォルダ・ファイルの作成・保存作業を自動化する方法を説明しました。
当初期待していたほどではないにしても、若干作業時間が短縮できてストレスも軽減できました。
もしよろしければ参考にして下さい。