Home » パワーポイントマクロ・PowerPoint VBAの使い方 » PowerPointでマクロを実行するダイアログ

対象:PowerPoint2003, PowerPoint2007, PowerPoint2010

最近、このサイト・インストラクターのネタ帳では、PowerPointのマクロを時々ご紹介しています。

それらのマクロをショートカットキーで実行する方法を、Microsoft MVB for Office Systemsのきぬあさ(@kinuasa)さんが、「[Mayhem]PowerPointマクロにショートカットキーを割り当てる。」という記事で紹介していらっしゃいます。

確かに、ショートカットキーなどから利用できるほうが便利です。

確かに、そうなのですが、実は大きな問題もあります。

文字サイズを小さくするマクロ、大きくするマクロ、行間を広くするマクロをご紹介してきて、このあと勿論、行間を狭くするマクロもご紹介します。

その他にもこういったちょっとしたマクロをご紹介していくことになるだろうと考えています。

それらにすべてショートカットキーを割り当てていくことも可能ですが、その場合、それらのショートカットキーをすべて覚えておかなければならない、という大問題が出てきます。

このような問題の解決策の一つとして、マクロを簡単に実行できるようなフォームを用意するという方法を考えてみました。

下図のようなフォームを表示させておいて、実行したいマクロを選択しておいて、そこでショートカットキーを利用するという操作です。

マクロを実行するダイアログ

今回ご紹介するマクロの中では、[F8]キーをショートカットキーに割り当てて、「シェイプの文字を1ポイント大きくする」が選択されているときに[F8]キーを押すと、「シェイプの文字を1ポイント大きくする」マクロが実行され、「シェイプの文字を1ポイント小さくする」が選択されているときに[F8]キーを押すと、「シェイプの文字を1ポイント小さくする」マクロが実行されます。

▼サンプルファイル(017862.ppt 76KByte)ダウンロード

[スポンサードリンク]

サンプルファイルには以下のような複数のプロシージャが作成してあります。

▼キーボード操作でマクロを実行するイベントプロシージャ

Private Sub lstMacroList_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
'F8キーが押されると選択されていたマクロを実行する

 If IsNull(lstMacroList.Value) Then Exit Sub
 If KeyCode = vbKeyF8 Then Application.Run lstMacroList.Value

End Sub

まずフォーム上のリストボックス「lstMacroList」に、上記のイベントプロシージャを作成してあります。

リストが選択されていないときは、このプロシージャを終了して、
 If IsNull(lstMacroList.Value) Then Exit Sub
押されたのが[F8]キーならば
 If KeyCode = vbKeyF8 Then Application.Run lstMacroList.Value
選択されているリストのマクロを実行しています。

リストボックスへのマクロ名の登録は以下のプロシージャで行っています。

▼リストボックスにマクロ名を表示するプロシージャ

Private Sub UserForm_Initialize()

 With lstMacroList
  .AddItem "シェイプの文字を1ポイント大きくする"
  .AddItem "シェイプの文字を1ポイント小さくする"
 End With

End Sub

標準モジュールのほうには、既にご紹介している「シェイプの文字を1ポイント大きくする」マクロと、「シェイプの文字を1ポイント小さくする」マクロのコードを用意し、それとは別に以下のマクロを作成しておきました。

▼フォームを表示するマクロ

Sub マクロランチャーの表示()

 frmMacroLauncher.Show

End Sub

実行すると、「frmMacroLauncher」フォームが表示されるだけのマクロです。

使い方としては、「マクロランチャーの表示」マクロを実行して、ダイアログを表示させて、フォントサイズを変更したいプレースホルダなどを選択しておいて[F8]キーを押すというイメージです。

[スポンサードリンク]

Home » パワーポイントマクロ・PowerPoint VBAの使い方 » PowerPointでマクロを実行するダイアログ

「パワーポイントマクロ・PowerPoint VBAの使い方」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.