0

私は PowerPoint のプラグインに取り組んでいます。これは、PowerPoint が SlideMaster ビューで表示されているときに、PowerPoint と対話します。

コンテンツによっては、SlideMaster または CustomLayouts で Shapes を選択する必要があります。

CustomLayouts でそれらを選択することができましたが、Shape が SlideMaster に配置されている場合、それを行うことができませんでした。

私は次のアプローチを使用しようとしました:

最初のアプローチ

presentation.Designs[1].SlideMaster.Shapes[1].Select();

この方法は、ユーザーが特定のスライド マスターを手動で選択した場合にのみ機能します。そうしないと、例外が発生します。

「形状 (不明なメンバー) : 無効な要求です。形状を選択するには、そのビューがアクティブである必要があります。」

2 番目のアプローチ

presentation.Application.ActiveWindow.View.Slide = document.Designs[2].SlideMaster;

このアプローチを使用すると、次の例外が発生します。

保護されたメモリを読み書きしようとしました。これは多くの場合、他のメモリが破損していることを示しています。

SlideMaster をアクティブにして図形を選択する方法が見つかりませんでした。

それを行う方法はありますか?

前もって感謝します。

4

1 に答える 1

1

PowerPoint で何かを選択するには、ウィンドウのビューを管理する必要があります。これにより、最初にビューを切り替えて、スライド マスターの最初の図形を選択できます。

パワーポイント 2007 の場合:

CommandBars.ExecuteMso ("ViewSlideMasterView")
DoEvents
ActivePresentation.SlideMaster.CustomLayouts(1).Select
SendKeys ("{UP}")

動作するはずの非 SendKeys メソッドは 2007 では動作しません (PowerPoint 2016 で正常にテストされています):

ActiveWindow.ViewType = ppViewMasterThumbnails
With ActiveWindow.View.Slide
  .Shapes(1).Select
End With

余談ですが、実際にオブジェクトを選択する必要がありますか? 何をしているかによっては、それを選択する必要さえない場合があるため、ウィンドウ ビューを管理する必要はありません。たとえば、コピーまたはフォーマットする場合は、選択する必要はありません。他のものとグループ化する場合は、最初に選択する必要があります。

于 2016-02-08T09:36:23.397 に答える