2016-04-16 29 views
0

ActivePresentation.Slides(1).Shapes.AddMediaObject2(audioFileName、msoFalse、msoTrue、50、50、50、50)は、ファイル名を含む完全な文字列を保持しているかどうかにかかわらず、 =など。AddMediaObjectでも動作しません。AddMediaObjectとAddMediaObject2コンパイラエラー

この: ActivePresentation.Slides(1).Shapes.AddMediaObject2 audioFileName、msoFalse、msoTrue、50、50、50、50

コンパイラエラーをスローしませんが、また、動作しません。私は3日間真っ直ぐに私をイライラさせてしまったので、信じられないほど混乱しています。私はこのタイプのコードのためにタイプしたすべてのフォーマットを検索して試してみました。私の人生ではそれを動作させることができません。

オーディオまたはビデオでは機能しません。写真はAddPicture関数でうまく動作しますが、それは

ActivePresentation.Slidesでなければなりません(1).Shapes.AddPictureファイル名:= picFileName、LinkToFile:= msoFalse、SaveWithDocument:= msoTrue、左:= 50、トップ:= 50、幅:= 50、高さ:= 50

形式の形式であり、ファイル名を高さに囲む(または)ことはできません。

また、コンパイラエラーは、等号と文字列を追加するように指示しますが、括弧で囲まれた書式の末尾にあります。私は何が起こっているのか分かりません。

助けがあれば幸いです。

答えて

0

.Addなど多くのメソッドがステートメントや関数として機能します。

ActivePresentation.Slides(1).Shapes.AddMediaObject2(audioFileName、msoFalse、... etcなど)(つまりAddMediaObject2の後の括弧)は、新しく追加されたメディアオブジェクトへの参照を返す関数なので、

Set SomeObject = ActivePresentation.Slides(1).Shapes.AddMediaObject2(audioFileName, msoFalse, 
代わり

。それとも、返されたオブジェクト参照に何かをするつもりはない場合は括弧を省略。

あなたの2番目の構文は、(W/O括弧)限り、ここに動作しますかPPTが手動でインポートできる有効なメディアファイルへの完全なパスを提供します。

コードを実行するとどのようなエラーが発生しますか?

+0

ので、このコード: 'サブaddaudio() 設定AUDIO1 = ActivePresentation.Slides(P).Shapes.AddMediaObject(ファイル名:= ActivePresentation.Path& "\オーディオ\オーディオ" &P&」。 End Sub' 私はそれをAddMediaObject2に変更してLinkToFileを追加すると、そしてSaveWithDocumentは、もはや動作しません。 – tyro

+0

これを使用しているPPTのバージョンは何ですか? AddMediaObject2がオブジェクトブラウザに表示されていますか? PPTの以前のバージョンではサポートされていません(しかし、いつ導入されたのか分かりません)。それがオブジェクトブラウザにない場合、あなたのバージョンではサポートされていません。 –

+0

睡眠が遅くなければなりません。私はfiledialogとAddMediaObject2と一緒にそれを解決しようとしていました。今週末はそれを手に入れました。助けてくれてありがとう!まあ、このプロジェクトを終了する途中です。 – tyro