PowerPoint (全般)

PowerPoint 全般に関する話題を扱うフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 10全般 : PowerPoint 2016)
マクロにショートカットキーを設定するには
投稿日時: 18/06/17 18:07:11
投稿者: momo-k

マクロにショートカットを設定する場合ですが
例えば「全スライド内にあるテキストのフォントサイズを一段階小さくする(ctrl+[)」
などの場合はどのようにすれば良いのでしょうか。
 
ご存知の方がいらっしゃれば教えてください。

回答
投稿日時: 18/06/17 22:14:26
投稿者: よろずや
投稿日時: 18/06/18 01:59:29
投稿者: momo-k

それがエクセルならわかるのですがパワポだと
ApplicationオブジェクトのOnKeyが見当たらないので困っています。

回答
投稿日時: 18/06/18 05:56:36
投稿者: よろずや

パワーポイントでしたか、見落としてました。
パワーポイントのことは知りません。
 
検索代行
https://www.ka-net.org/blog/?p=1580
https://www.ka-net.org/blog/?p=1464

回答
投稿日時: 18/06/19 13:05:08
投稿者: Andy

そのマクロを、クイックアクセスツールバーの例えば先頭に登録しておけば、[Alt]、[1] の順に押下すれば実行されますが、この程度ではいかがでしょうか。

投稿日時: 18/06/19 16:54:52
投稿者: momo-k

最終的にはクイックアクセスにマクロ登録をして実行させたいのですが、
「全スライド内にあるテキストのフォントサイズを一段階小さくする」
コードがわからなくて、、、
 
テキストを何ポイントか小さくするだけなら
 
https://www.relief.jp/docs/017855.html
 
のような形で可能なのですが、これだと一つのテキストの中にフォントサイズが異なる
ものが混在しているとすべて同じサイズに統一縮小されてしまうんです。
 
なのでショートカットキー(ctrl+[)をコードにいれられたらなぁと思いまして

回答
投稿日時: 18/06/19 19:53:11
投稿者: んなっと

ショートカットキーでマクロを呼び出すのではなく、
ショートカットキーの機能をマクロで呼び出したいのですね。
こんな感じですか?
 
Sub test()
  Dim s As Long, v As Long
  Dim Sld As Slide
  s = ActiveWindow.Selection.SlideRange(1).SlideIndex
  v = ActiveWindow.View.Type
  ActiveWindow.ViewType = ppViewSlide
  For Each Sld In ActivePresentation.Slides
    Sld.Select
    Sld.Shapes.SelectAll
    CommandBars.ExecuteMso "FontSizeDecrease"
  Next
  ActiveWindow.ViewType = v
  On Error Resume Next
  ActivePresentation.Slides(s).Select
End Sub

投稿日時: 18/06/19 20:28:23
投稿者: momo-k

んなっとさんのコードを試したところ、問題なくできました!
これで作業が効率よくできそうです。
本当に助かりました、ありがとうございますm(_ _)m