Excel上に動画を配置する
Excel上に動画を配置する方法についての質問がありました。動画のリンクを配置するのは簡単ですが、それをクリックすると別の画面でビデオプレイヤーが起動します。Excel内で動画を直接再生するためには、ActiveXコントロールのWindowsMediaPlayerを配置する必要があります。ただし、動画を正常に再生するためにはVisual Basic for Applications(VBA)を使用する設定が必要です。この設定方法についてやってみました。
リボンに開発ボタンを追加
WindowsMediaPlayerの配置やVBAを使用するには開発ボタンを表示する必要があります。まず、リボンに開発ボタンを追加します。
検索ウインドウに【リボンのカスタマイズ】と入力して、一覧から【オプション:カスタマイズ】を選択します。
リボンのカスタマイズからリボンの【リボンのユーザー設定】→【メインタブ】→【開発】にチェックを入れてOKを押下します。
リボンに開発タブが表示されます。
WindowsMediaPlayerの配置
開発のボタンの下側にデザインモードがあります。この部分の背景がグレーになっていることを確認します。
これが【デザインモード】が【オン】の状態です。
挿入ボタンからコントールの選択を押下します。
コントロールの選択画面が表示されたら、Windows Media Playerを選択してOKを押下します。
Windows Media Playerを選択したらドラックで任意のサイズに設定します。
これでWindows Media Player1のオブジェクトが配置できました。
動画のデータを設定
Windows Media Playerが配置出来たらこれに動画ファイルを割り当てます。
WindowsMediaPlayer1でプロパテを押下します。
プロパティ画面が表示されます。
WindowsMediaPlayer1のプロパティが表示されたらURLに動画のアドレス(フォルダの場所)を入力します。
動画ファイルは、CドライブのMovieフォルダにSample.mp4ある前提です。
C:\Movie\Sample.mp4
上記に表示されている【 \ 】バックスラッシュは【¥】を入力して半角に変換すると表示されます。
①ローカルディスク(C:)> Movie の右側をクリックします。
②フォルダのアドレスが表示されます。表示されたアドレスとファイル名をURLに入力します。アドレスとファイル名の間には【 \ 】を忘れずに入力してください。
これで動画が設定されました。
この状態で【デザインモード】を【オフ】にすると動画が再生されます。【デザインモード】の背景が白になります。
【デザインモード】を【オン】にして元のサイズに戻します。
画像サイズをVBAで指定する
WindowsMediaPlayer1のプロパティでWidthとHeightの設定しても再生すると動画が拡大されてしまいます。そこでVBAで設定することで指定した画像サイズで設定できるようになります。
開発→コードの表示をクリックします。
プロパティのWidthとHeightの設定です。
ここでの設定は無効化されます。
ここに以下のコードを入力します。
Private Sub WindowsMediaPlayer1_StatusChange()
' 再生の状態が変わるたびにサイズを固定
With WindowsMediaPlayer1
.Width = 400 ' ここでの単位はポイントです。適切なサイズに変更してください。
.Height = 300 ' ここでの単位はポイントです。適切なサイズに変更してください。
End With
' 自動再生を無効にする
WindowsMediaPlayer1.settings.autoStart = False
End Sub
StatusChangeは、WindowsMediaPlayer1はActiveXコントロールの状態が変わるたびにトリガされるイベントです。たとえば、動画の再生が開始されたり、停止したりすると、このイベントが実行されます。
これで動作サイズが固定されました。
ファイルの拡張子をxlsmで保存
ExcelでVBAやマクロを使用すると拡張子をxlsmで保存する必要があります。これでファイル形式で保存しないとVBAで記述したコードが保存されません。
まとめ
Excelで動画を配置してExcel内で再生できるようにするにはVBAの設定が必要になります。Wordでも同じ設定で動画を配置して再生することができました。スマホ等の縦サイズの動画は余白が表示されます。
コメント