[[20180501090835]] 『EXCELのVBAで「PPTスライドショーを始めから開始=x(x11euser) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『EXCELのVBAで「PPTスライドショーを始めから開始」と同じ処理をさせるには』(x11euser)

EXCELのVBAからPPTの操作をさせようとしています。
開いているプレゼンテーションに対し「SlideShowSettings.Run」メソッドを
実行すると、スライドショーが開くのは判りました。

しかし、この命令だとプレゼンテーションとスライドショーの2つのウィンドウが開いてしまいます。

一方、手作業で、プレゼンテーションに対し、「スライドショー」タブ→「最初から」をクリックすると、ウィンドウはスライドショーのみとなります。

この状態をEXCELのVBA操作で実現させたいのですが、方法が見つかりません。
どのようなプロパティやメソッドを使えばいいのでしょうか。

< 使用 Excel:Excel2010、使用 OS:Windows10 >


 こんばんは!
回答がついてないですね(^^;

 昨日、暇だったから私もやってみようと調べていたら、何と私のPCにはPPが入ってないΣ( ̄ロ ̄lll)ガーン
PPはもっぱら会社でシコシコ発表用に触ってるだけで、、、、自宅のPCに入ってないとは_| ̄|○

 で、お力になれないんですけど、↓ここにいい感じのがありそうですから、何とかなりませんでしょうか?

https://tonari-it.com/excel-vba-powerpoint/
(SoulMan) 2018/05/02(水) 19:55


SoulManさんと同じで、自宅PCにはパワーポイント入ってないのでテストできないですが、回答つかないのは、ExcelのVBEにコードを記述するとはいえ、実質的にはパワーポイントの操作になってるので、「エクセルの質問」じゃないと思われているのでは?(少なくとも私はそんな風に思います)

なので、モーグ(http://www.moug.net/faq/index.php)などのパワーポイントの質問が可能な掲示板に移動したほうがいいのかも・・

試していなのでわからないですが、パワーポイントの方でもマクロの記録ができるなら、そちらでコードを研究したうえで、ExcelのVBEに移植すればいいとおもいます。
(もこな2) 2018/05/03(木) 12:11


SlideShowSettings の ShowTypeプロパティをppShowTypeSpeakerにするんでしょうか。
いずれにせよSlideShowSettingsの何かのプロパティでしょうから、
トライしてみてください。
"ヘルプが原典"の言葉を贈ります。
 
ちなみに、PPTにはマクロ記録機能はないと思います。

(γ) 2018/05/03(木) 13:23


 パワーポイントのマクロ記録は2003まではメニューにあり、2007でメニューからはずさて隠し機能(ただし記録されないものもあり)に、
 2010で完全に削除されたようだ。
 要はパワーポイントのバージョンによって異なることになる。
(ねむねむ) 2018/05/03(木) 14:37

>ShowTypeプロパティ

試してみたのですが

>プレゼンテーションとスライドショーの2つのウィンドウが開いてしまいます。

は、解決しませんでした。
英語サイトとかも検索してみましたが、見つけられませんでした。
ただし、そもそもパワーポイントのことしらないので
見逃している可能性は高いですが…

SendKeys "{F5}"

これで、お望み結果にはなりました(当然ですが)。
でも表示に滑らかさがないのが気にいらないかも。

(マナ) 2018/05/03(木) 15:04


そもそも、対象ファイルをスライドショー形式にしておくのはだめなのでしょうか。

(マナ) 2018/05/03(木) 15:08


2002で記録されたマクロです。
これを実行しても駄目でした。
 Sub Macro1()

    With ActivePresentation.SlideShowSettings
        .ShowType = ppShowTypeSpeaker
        .LoopUntilStopped = msoFalse
        .ShowWithNarration = msoTrue
        .ShowWithAnimation = msoTrue
        .RangeType = ppShowAll
        .AdvanceMode = ppSlideShowUseSlideTimings
        .PointerColor.SchemeColor = ppForeground
        .Run
    End With

 End Sub

(マナ) 2018/05/03(木) 15:24


 テスト出来ませんけど、↓ではどうでしょうか?
https://msdn.microsoft.com/ja-jp/vba/powerpoint-vba/articles/slideshowsettings-run-method-powerpoint

 With ActivePresentation.SlideShowSettings

    .ShowType = ppShowSpeaker

    .Run.View.AcceleratorsEnabled = False

 End With

 または、↓この辺とか
https://msdn.microsoft.com/ja-jp/vba/powerpoint-vba/articles/slideshowwindow-object-powerpoint

 SlideShowWindows(2).Activate
(SoulMan) 2018/05/03(木) 17:38

 不要コードでしたので、消去しました。(γ )21:31
(γ) 2018/05/03(木) 20:15

γさん

>しかし、この命令だとプレゼンテーションとスライドショーの2つのウィンドウが開いてしまいます。

質問者さんの、この文章の意味が、よくわかっていないのですが、
スライドショーの画面のほかに、編集するときの画面(正式な名前を知りません)
が残ってしまうのを手作業と同じようにしたいのだと想像します。
タスクバーのアイコンをクリックすると残っているのがわかります。

他のアプリケーションと頻繁に切り替えて使用するのかもしれません。
↓からの想像です
『パワーポイントのスライドショーの種類を操作したい』(x11euser)

(マナ) 2018/05/03(木) 20:48


別のスレッドがあったのですか、知らなかった。
 
想像はあたっているように思います。
なにか、表示に「閲覧表示」というのがありますが、
それが求めるもののようです。
ActiveWindow.ViewTypeに許される値をすべて指定してみたが、
該当するものは無かったです。
 
ところで、質問者さんはどうしたんですか?
人に任せて長い休憩ですか?
そうねえ連休ですからねえ。
 
私はこれまでとさせていただきます。
お力になれず無念。
ついでに上のコードも不要に付き消去しておきます。

(γ) 2018/05/03(木) 21:29


みなさん、真摯にご回答頂きありがとうございました。
ねむねむさんのご指摘にあるように、PPTのマクロ記録は2003までしか使えません。
なので、PPTの2003版でマクロ記録を行い、そこで書かれたマクロ命令を使ってみたところ、
手作業ではプレゼンテーションのウィンドウがスライドショーのウィンドウになったのに
マクロ処理ではプレゼンテーションとは別にスライドショーのウィンドウが開かれてしまって
いるため、このような質問を掲示させて頂いた次第です。
お世話になりました。重ねて御礼申し上げます。

(x11euser) 2018/05/06(日) 09:41


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.