Excel VBAで動画再生マクロを作成する方法

このQ&Aのポイント
  • Excel VBAを使用して動画再生マクロを作成する方法について教えてください。
  • Excelシートの特定のセルに保存された動画を再生するためのハイパーリンクを設定する方法について教えてください。
  • マクロでVOB動画を再生するためにはどのように改造すればよいのか教えてください。
回答を見る
  • ベストアンサー

動画再生のマクロ.について教えて下さい

エクセルVBA2003対応 の マクロについて教えて下さい 現在 エクセルシートのセルC20とセルC10に、下記の場所に保存された動画を再生するようにハイパーリンクが設定してあります C20 → C:\Documents and Settings\ビデオ\○×.mpg C10 → C:\Documents and Settings\ビデオ\○×.vob 上記の環境の中で、下記のマクロsample1は、mpg動画の為、mplay32.exeで再生が出来ます。 しかし、マクロsample2は、VOB動画の為、VOB動画を再生するvlc.exeに書き変えてありますが,「ファイルが見つかりません」のエラーがでて、再生が出来ません。 ちなみに、vlc.exeの保存場所は、C:\Program Files\Vlc\vlc.exeに存在しています。 VOB動画を再生するためには、マクロsample2をどのように改造すればよいのか どなたか教えてください よろしくお願いいたします Sub sample1() Dim sAddr As String On Error Resume Next sAddr = Range("C20").Hyperlinks(1).Address On Error GoTo Err_ sAddr = Chr(34) & sAddr & Chr(34) Call Shell("mplay32.exe /play /close " & sAddr, vbNormalFocus) Bye_: Exit Sub Err_: MsgBox Err.Description, vbCritical Resume Bye_ End Sub Sub sample2() Dim sAddr As String On Error Resume Next sAddr = Range("C10").Hyperlinks(1).Address On Error GoTo Err_ sAddr = Chr(34) & sAddr & Chr(34) Call Shell("vlc.exe /play /close " & sAddr, vbNormalFocus) Bye_: Exit Sub Err_: MsgBox Err.Description, vbCritical Resume Bye_ End Sub

質問者が選んだベストアンサー

  • ベストアンサー
  • hige_082
  • ベストアンサー率50% (379/747)
回答No.1

Call Shell("C:\Program Files\Vlc\vlc.exe /play /close " & sAddr, vbNormalFocus)

kame1010
質問者

補足

ありがとうございました これに修正して、実行しましたら、動画再生のアプリケーションプレーヤーの表示は 出ましたが、動画は再生されませんでした。 あと、何かを加える必要があるのでしょうか? Sub sample2() Dim sAddr As String On Error Resume Next sAddr = Range("C10").Hyperlinks(1).Address On Error GoTo Err_ sAddr = Chr(34) & sAddr & Chr(34) Call Shell("C:\Program Files\Vlc\vlc.exe /play /close " & sAddr, vbNormalFocus) Bye_: Exit Sub Err_: MsgBox Err.Description, vbCritical Resume Bye_ End Sub

その他の回答 (1)

  • hige_082
  • ベストアンサー率50% (379/747)
回答No.2

>あと、何かを加える必要があるのでしょうか? え~っと ハッキリ言って、分りません vlcは有名なフリーソフとで、私も知ってはいますが 使用したことが無いので >vlc.exe /play /close この引数で間違いないのですか? 引数はソフトの作成者が設定するものなので excelの問題ではなくvlcソフト側の問題です >これに修正して、実行しましたら、動画再生のアプリケーションプレーヤーの表示は >出ましたが、動画は再生されませんでした。 vlcに対しての引数が間違っているからでしょう? 後はvlcの作者か、このソフトを紹介しているサイトで 引数を確認してください 私もvlcのサイトを流してみましたが 引数に /play /close は無かったように思います 以上

kame1010
質問者

補足

お手数をかけ、すいません 小生も もう少し 調べてみます

関連するQ&A

  • 動画再生のマクロ ハイパーリンクについて教えて下さい

    エクセルVBA2003対応 の マクロについて教えて下さい 現在エクセルのワークシートの「セルC14」に、 MPG形式の動画が保存してあるパス (例えば、C:\◎○×\ビデオ\あいう.mpg)が記載して あり、それにハイパーリンクが設定してあります。 マクロで、それを自動実行し、終了するようにしたい為 Range("C14").Select Selection.Hyperlinks(1).Follow NewWindow:=False, AddHistory:=True と、プログラムし、マクロを実行すると、自動再生は しますが、動画が終了しても、再生画面はそのまま残り 動画再生のプログラムは自動で終了しません。 どのようにプログラムを追加すれば、再生後、自動で 「動画再生のプログラム」をクローズさせることが できるかどなたか教えて下さい よろしくお願いいたします 注:セルC14をクリックすれば正常に動画を再生できるのは   確認済みです

  • 動画再生ソフトについて教えて下さい

    .VOBファイルと、.tsファイルが見れるコーデックパックまたは動画再生ソフトを探しています。 以前、「VLC media player」という動画再生ソフトを利用していた際には、上記コーデックが内蔵されていたらしく何もせずに再生できていたのですが、当該ソフトだと画面を小さく出来ない(当方、11.1型の液晶ノートを利用しているので、もっと画面を小さくしたかったのです。)為、今回 「Qonoha」というソフトを新たに導入したところ、いずれのファイルも再生出来なくなってしまいました。 そこで 「ffdshow」というコーデックパックをインストールしたところ、.VOB ファイルは再生できるようになったのですが、.tsファイルは再生できません。 また .tsファイルを再生しようとすると、当該「Qonoha」という動画再生ソフト自体がハングアップしてしまうのです。 以上の様な経緯の中で質問です。 (1)「Qonoha」という動画再生ソフトでは、.tsファイルは再生出来ないのでしょうか? (2)再生できるとして、.tsファイルが再生できるコーデックパックを教えて下さい。 (3)「Qonoha」にはこだわりはありません。.tsファイル、.VOBファイルが再生できる 動画再生ソフトで、VLC media player より画面が小さくできるもので且つ、常に手前に表示できる機能のあるものがあれば教えて下さい。 いろいろと条件を付けて申し訳ありませんが、宜しくお願い致します。

  • サンプル動画の再生

    http://www.watch.impress.co.jp/av/docs/20070613/zooma310.htm のサンプル動画が再生できません。 拡張子は.m2tとなっています。 VLCやGOM PLAYERもダメでした。 どなたか再生できた方、いらっしゃいませんか?

  • ある日突然、動画の画質とスムーズな再生が不可能に

     昨日まで見れていた動画が次の日から画質はざらつくわ、途中でストップするわの状態になりました。  ・使用プレイヤー:VLCメディアプレイヤー、QONOHA  ・再生素材   :ISOファイルおよびDAEMONマウントしたVOBファイル  ・グラフィック :インテル82830グラフィックアクセラレーター、ドライバのアップデートもしましたが変わらず。  (1)ISOファイルをそのままVLCできれいに見れたのが上記状態に。  (2)VOBファイルも同じ状態  (3)VOBファイルをMPCで再生すると動きはスムーズでも画質は悪い  (4)AVI、WMVの動きはVLC、QONOHA、MPCではスムーズですが画質悪し。  (5)コーデックはK-kite mega codec pack導入済み ※そもそもVLCでのISOファイルの直接再生にはコーデック不要では? ※ただこのような状態になる前に、AVIファイルをQONOHAで再生中、突然、セーフモード様な画面になり、再起動、その時現れた画面に「ウィンドウズは深刻なエラーから回復しました」 ※昨日までDVD並みの高画質で見れていたので落差が激しいです。 一体全体どうしたらよいのでしょうか?どなたかお知恵を。        

  • ●動画再生ソフトについて

    できれば無料ソフトが良いのですが? 以下の機能を備えている優良ソフトはないでしょうか? (1)フレーム数48でコマ送りできる(キーボード操作でなくソフトのコマ送りボタンで) (2)vobファイル再生時、字幕があれば字幕表示できる (3)再生できるファイル形式が  vob, vts, swf, 3g2, 3gp, mts, mp4, flv, mpeg2, mpg (4)ストリーミング再生で録画出来、出力ファイル形式を選べる (5)ウインドウの向きを回転させることができる (6)ファイル再生時、ウインドウ上部にファイル名を表示できる (7)一時停止してもロゴがでない (8)グラフィックイコライザーを装備している (9)明るさ補正・シャープにする、などの機能がある これらを備えた動画再生ソフトはないでしょうか? vlc mediaプレイヤー、Splash, Splash lite は動画再生時輪郭が2重になる。 Gom Player はコマ送りすると20回ほどするとフレームが飛び再生してしまう。 quonoha はコマ送りすると逆にコマ送りする。 など使いづらいです。 宜しくお願いします。

  • EXCELのVBAでRange("A1:C4")を変数にする方法を教え

    EXCELのVBAでRange("A1:C4")を変数にする方法を教えて下さい。 Sub Sample1() Range("A1:C4").Borders.LineStyle = True End Sub 上のマクロの"A1:C4"を変数にして成立させるにはどのように設定すればいいのでしょうか? 以下の方法ではエラーになってしまうので、宜しくお願いします。 Sub Sample1() HENSU = Chr(34) & "A1" & ":" & "C4" & Chr(34) Range(HENSU).Borders.LineStyle = True End Sub

  • 動画の再生ができません

    PC環境 DELL OPTIPLEX GX620 OS XP PRO CPU Pen4 3.4GHz 先日OSを再インストールしたのですが、その後動画が見られなくなりました。MP3やWAVなどは問題無く再生できますが、wmv、avi、mpegなどが全く再生できない状況です。プレーヤーはメディヤプレーヤー、リアルプレーヤー、GOMなどいろいろ試しましたが、なぜか動画のみ再生できません。メディヤプレーヤーはいろいろなバージョンを試したのですがことごとく失敗です。コーデックなども問題ないと思います。 エラーメッセージは動画を再生すると、「問題が発生したためwmplayer.exeを終了します」と出てきます。

  • パソコンが変わってもマクロが実行できるようにしたい

    windowsXP Excel2000でマクロ作成しました。 私は 6)の aaaa のパソコンを使っています。 これをUSBメモリで他のパソコンに複写し使おうとすると当然エラーがでます。 そのパソコンに 6)ChDir "C:\Documents and Settings\bbbb\デスクトップ\請求書フォルダ" '変更する。 とすればこのマクロが使えます。 パソコンが変わってもこのマクロが使えるようにしたいのですがどうすればよろしいでしょうか。 今はいちいち6)のaaaa、 bbbb部分を変更して使っています。 Sub ブック名に現在の日付を付加して保存() 1)Application.DisplayAlerts = False 2)Dim Filename As String 3)Application.DisplayAlerts = False 4)ChDrive ThisWorkbook.Path 'ブックのドライブに変更する。 5)ChDir ThisWorkbook.Path 'ブックのフォルダに変更する。 6)ChDir "C:\Documents and Settings\aaaa\デスクトップ\請求書フォルダ" '変更する。 7)Filename = Format(Date, "yyyymmdd") 8)On Error Resume Next 9)ActiveWorkbook.SaveAs Filename:="請求" & Filename & ".xls" 10)Err.Clear 11)Application.Quit 12)End Sub

  • マクロ作成後、エラー70が出て動作しません。

    ■EXCEL2010のマクロについて■ マクロ作成後、下記のエラーが出てしまいます。 実行時エラー 70 書込みできません。 ↓デバックを見ると、この箇所に黄色いマークがつきます。 Set out = fs.CreateTextFile(fpath & "\sitelist.csv", True) 色々と確認して見ましたが、よくわかりません。 ★原因と思われるのが マクロ-シート(マクロ管理シート)を作成後、 そのファイルを開くと(マクロ管理シート1)で表示されてしまい、 エラー 1004が出ます。 ただし、ドロップ&ドラッグすれば、(マクロ管理シート)が表示され、 マクロが問題なく動作します。 どうすればよいのでしょうか? 知り合いにもらったマクロを元にいじっていますので、 よくわからない部分もありますが、よろしくお願いいたします。 --------------------------------------- 以下、マクロです。 Sub 作成_Click() Dim fpath As String Dim fs As Object Dim out As Object Dim i As Long Dim myArray() As String Dim title As String fpath = ActiveWorkbook.Path Set fs = CreateObject("Scripting.FileSystemObject") Set out = fs.CreateTextFile(fpath & "\sitelist.csv", True) For i = 5 To 105 title = Cells(i, 1) Mar = Cells(i, 2) Email = Cells(i, 3) URL = Cells(i, 4) msg = Cells(i, 5) category_miumiulink = Cells(i, 6) category_inavi = Cells(i, 7) other_link = Cells(i, 8) passwd = Cells(i, 9) keyword = Cells(i, 10) ame = Cells(i, 11) temprate = Cells(i, 12) jyanru = Cells(i, 13) If title = "" Then Exit For End If csv = "" csv = csv & Chr(34) & title & Chr(34) & "," csv = csv & Chr(34) & Mar & Chr(34) & "," csv = csv & Chr(34) & Email & Chr(34) & "," csv = csv & Chr(34) & URL & Chr(34) & "," csv = csv & Chr(34) & msg & Chr(34) & "," csv = csv & Chr(34) & category_miumiulink & Chr(34) & "," csv = csv & Chr(34) & category_inavi & Chr(34) & "," csv = csv & Chr(34) & other_link & Chr(34) & "," csv = csv & Chr(34) & passwd & Chr(34) & "," csv = csv & Chr(34) & keyword & Chr(34) & "," csv = csv & Chr(34) & ame & Chr(34) & "," csv = csv & Chr(34) & temprate & Chr(34) & "," csv = csv & Chr(34) & jyanru & Chr(34) Call out.writeline(csv) Next i MsgBox "作成お疲れ様でした♪" End Sub ---------------------------------------

  • マクロ ソートをしたいのですが、組み込めますか

    マクロの説明 1.Sub Sample7()はsheet4の列をソートするマクロです。 (単独では、このマクロでソートできる) 2.Sub sample2()はsheet4のソート以外は完成しています。 やりたいこと Sub sample2()の中にsheet4の重複データを削除したもののソートのコードを組み込みたい。 但し、組み込むとしてSub Sample7()のコードでよいのか、初心者なのでよくわかりません。 なお、Sub sample2()のマクロは途中省いています。 Sub Sample7() Sheets("sheet4").Range("A1:A1135").Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlYes End Sub Sub sample2() Dim data As Variant 'データコピー用の使いまわし配列 Dim dic As Object Dim i As Long Set dic = CreateObject("Scripting.Dictionary") 'Sheet4~5のA列をリセット Sheets("Sheet4").Range("A2:A" & Rows.Count).ClearContents Sheets("Sheet5").Range("C3:C" & Rows.Count).ClearContents            ↓↓↓↓↓↓↓↓↓↓↓↓↓↓ 'Sheet4に重複していないデータを書き込み With Sheets("Sheet4") .Cells(Rows.Count, "A").End(xlUp).Offset(1).Resize(dic.Count).Value = Application.Transpose(dic.keys) 'Sheet4のC列をSheet5にコピー data = .Range("C2:C" & .Cells(Rows.Count, "A").End(xlUp).Row).Value End With Sheets("Sheet5").Range("C3").Resize(UBound(data)).Value = data Set dic = Nothing End Sub

専門家に質問してみよう