Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


532 / 13645 ツリー ←次へ | 前へ→

【79841】Excel VBAによるpowerpointの操作について ぼう 18/4/28(土) 20:11 質問[未読]
【79842】Re:Excel VBAによるpowerpointの操作につい... 亀マスター 18/4/28(土) 22:06 発言[未読]
【79843】Re:Excel VBAによるpowerpointの操作につい... ぼう 18/4/28(土) 23:10 質問[未読]
【79844】Re:Excel VBAによるpowerpointの操作につい... 亀マスター 18/4/29(日) 1:25 発言[未読]
【79849】Re:Excel VBAによるpowerpointの操作につい... ぼう 18/4/29(日) 14:37 質問[未読]
【79850】Re:Excel VBAによるpowerpointの操作につい... マナ 18/4/29(日) 14:54 発言[未読]
【79858】Re:Excel VBAによるpowerpointの操作につい... ぼう 18/5/1(火) 8:43 質問[未読]
【79859】Re:Excel VBAによるpowerpointの操作につい... よろずや 18/5/1(火) 9:23 発言[未読]
【79860】Re:Excel VBAによるpowerpointの操作につい... ぼう 18/5/1(火) 13:37 質問[未読]
【79862】Re:Excel VBAによるpowerpointの操作につい... よろずや 18/5/1(火) 15:48 回答[未読]

【79841】Excel VBAによるpowerpointの操作について
質問  ぼう  - 18/4/28(土) 20:11 -

引用なし
パスワード
   次のように、Excel VBAでPowerPointを開き、スライド番号を取得し表示するためのコードを書いたのですが、10行目のset ppSldのところで必ず「問題が発生したため〜〜」というダイアログとともにエクセルを閉じられてしまいます。何が原因なのでしょうか。
ちなみに、その行を別のスライド番号を使う系の文(MsgBox ppPrs.Slides(1).SlideNumberなど)にしても同じことが起こるので、ppPrs.Slides()が何がいけないのかなという気はしています。

Sub aaa()

Dim ppApp As New PowerPoint.Application
ppApp.Visible = True

Dim ppPrs As PowerPoint.Presentation
Set ppPrs = ppApp.Presentations.Open(ThisWorkbook.Path & "/sample.pptx")

Dim ppSld As PowerPoint.Slide 'スライドオブジェクト
Set ppSld = ppPrs.Slides(1) '1ページ目のスライドをセット

MsgBox "スライド1のページ数:" & ppSld.SlideNumber 'スライド1のスライド番号

ppApp.Quit
Set ppApp = Nothing

End Sub

【79842】Re:Excel VBAによるpowerpointの操作につ...
発言  亀マスター  - 18/4/28(土) 22:06 -

引用なし
パスワード
   あまりPowerPointのVBAには詳しくありませんが、構文は間違っていないように思います。
手元で適当なPowerPointのファイルを開いてみたところ、普通にページ番号を表示できました。
開こうとしているファイルに問題があるのではないでしょうか?

【79843】Re:Excel VBAによるpowerpointの操作につ...
質問  ぼう  - 18/4/28(土) 23:10 -

引用なし
パスワード
   早いご返答ありがとうございます!
失礼ながら質問で返させていただきます。
ファイルの問題とのことですがPowerPointのファイルのことでしょうか。
一応PowerPoint側もエクセル側も、いじれるところはいじったつもりですが、結局解決しませんでした。
どのような問題が可能性として考えられますでしょうか…?

【79844】Re:Excel VBAによるpowerpointの操作につ...
発言  亀マスター  - 18/4/29(日) 1:25 -

引用なし
パスワード
   >ファイルの問題とのことですがPowerPointのファイルのことでしょうか。

PowerPointのファイルに問題があるのではないか・・・と思います。

原因についてはなんとも言えませんが、
以下のようなところからチェックしてみてはどうでしょうか。

・問題のPowerPointファイルを普通にPowerPointで開くことはできるか
・エクセル経由ではなく直接PowerPointのVBAから同じ操作をしても問題は発生するか
・別のPowerPointファイルではエラーが発生するか
・1ページ目以外のスライドを対象に同じことをするとエラーは発生するか

【79849】Re:Excel VBAによるpowerpointの操作につ...
質問  ぼう  - 18/4/29(日) 14:37 -

引用なし
パスワード
   おっしゃったことを全て試しましたがうまくいきませんでした…。
そこでWindowsでやってみたところうまくいきました。(普段はMacを使っています。)
この違いは何があるでしょうか。Macに使い慣れているということもありできればMacでやりたいので、教えていただけると幸いです。

【79850】Re:Excel VBAによるpowerpointの操作につ...
発言  マナ  - 18/4/29(日) 14:54 -

引用なし
パスワード
   ▼ぼう さん:

お邪魔します。
ht tp://darumaexcel.uijin.com/info/pause.html

【79858】Re:Excel VBAによるpowerpointの操作につ...
質問  ぼう  - 18/5/1(火) 8:43 -

引用なし
パスワード
   ご回答ありがとうございます
区切り記号については、適当なファイルのパス(わたしが使ったのはThisWorkbook.Path)をメッセージとして表示するプログラムを別で組んで、「/」であることを確認しました。逆に「/」以外だと、PowerPointファイルを開こうとした時点でPowerPointが落ちてしまう(わたしが載せたコードであればファイルを開くところまではできる)ので、区切り記号はあっていると思われます。
他に何か可能性はありませんでしょうか…?

【79859】Re:Excel VBAによるpowerpointの操作につ...
発言  よろずや  - 18/5/1(火) 9:23 -

引用なし
パスワード
   >区切り記号については、適当なファイルのパス(わたしが使ったのはThisWorkbook.Path)をメッセージとして表示するプログラムを別で組んで、「/」であることを確認しました。
定数「/」ではなくApplication.PathSeparatorを使えばMacとWindowsの両方で使えます。

【79860】Re:Excel VBAによるpowerpointの操作につ...
質問  ぼう  - 18/5/1(火) 13:37 -

引用なし
パスワード
   一応それは、Macでは「/」、Windowsでは「\」で、両者ともファイルを開くことができることが確認できています。(一応ご指南頂いた方法は取ることにします、ありがとうございます。)
ということで別の要因だと思われます、、
他に何か考えられることはありませんかね、、

【79862】Re:Excel VBAによるpowerpointの操作につ...
回答  よろずや  - 18/5/1(火) 15:48 -

引用なし
パスワード
   ▼ぼう さん:
>他に何か考えられることはありませんかね、、

あとは、Mac版のVBAがどこまで互換性を持っているかだと思います。
どっかのページで、Office for Mac版のVBAは保証しないと書いてあったように記憶しています。

532 / 13645 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free