LoginSignup
4
4

More than 3 years have passed since last update.

PowerPoint VBA で 動画ファイルを作るときの注意

Last updated at Posted at 2019-11-12

動作環境

・Microsoft Office 365
・Microsoft Powerpoint 2016, 2013

はじめに

マクロ処理の中に動画生成する処理が必要という人向けに書いてみようと思います。

「あれ?スライドショーだと音声や動画が再生されるのに、MP4出力したら静止画になったぞ!?音も鳴らないぞ!!」という問題にぶち当たりました。スライド切替は反映してくれるけど、スライドに貼ったオブジェクトは何も動作してくれませんでした。

解決方法としては、「マクロ上でもう一回設定してね!」という方法を採用しました。おそらく、UI上の設定はほとんど無効になってしまうと思います。

注意点

PlaySettings.PlayOnEntry を True にしないと、スライドに入れたオブジェクトが何も動いてくれないです。
これが原因。おそらくデフォルトは False だと思います。

Set currentSlide = ActivePresentation.Slides(i)

With currentSlide.Shapes.AddMediaObject2(FileName).AnimationSettings
    .AdvanceMode = ppAdvanceOnTime 'スライドの切り替え方。ppAdvanceOnTimeにすると自動切替
    .AdvanceTime = 0 '指定スライドの切替時間。0にしないと、すぐに切り替えが起きない。
    .Animate = msoTrue 'スライドショー中に指定された図形のアニメーションを実行するかどうか
    .PlaySettings.PlayOnEntry = True 'アニメーション実行時、指定したビデオやサウンドを自動再生するか
End With

その他に注意する点。

こっちは、そのスライド自体の表示時間です。

currentSlide.SlideShowTransition.AdvanceTime = 10 '10秒表示

以下は、MP4ファイルを生成するコードです。

ActivePresentation.CreateVideo FileName:=mp4FileName, VertResolution:= 1080, Quality:= 80
  • VertResolution は動画の解像度です。低い値にすると、文字化けが起きます。
  • Quality は動画の品質です。Maxは100。
4
4
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
4