Home » パワーポイントマクロ・PowerPoint VBAの使い方 » プレースホルダー » VBAでスライドタイトルの左上位置を取得する

VBAでスライドタイトルの左上位置を取得する

動作検証バージョン:Windows版PowerPoint(バージョン1901 ビルド11231.20174)

「パワポ スライドタイトル左上位置取得 VBA」
という検索キーワードでのアクセスに気付きました。

詳細は不明ですが、スライドタイトルの左上の位置を取得するPowerPoint VBAのコードを探していらしたのでしょう。

いつものようにシンプルなSubプロシージャをご紹介しておきます。

[スポンサードリンク]

スライドタイトルの左上位置を取得するサンプルマクロ

以下のSubプロシージャを実行すると、アクティブプレゼンテーション先頭スライドの、スライドタイトル左上の位置が、メッセージボックスに表示されます。
Sub スライドタイトルの左上位置を取得する()
 With ActivePresentation.Slides(1).Shapes
  If .HasTitle Then
   MsgBox _
     "左 : " & .Title.Left & vbCrLf & _
     "上 : " & .Title.Top
  End If
 End With
End Sub

Shapes.Titleでスライドタイトルを表すShapeを取得できる

Shapesコレクションに用意されているTitleプロパティを使うと、

VBAでスライドタイトルの左上位置を取得する

スライドのタイトルプレースホルダーを表すShapeオブジェクトを取得できます。
  With ActivePresentation.Slides(1).Shapes
    MsgBox _
      "左 : " & .Title.Left & vbCrLf & _
      "上 : " & .Title.Top

スライドのタイトルプレースホルダーなので、SlideオブジェクトがTitleプロパティ持っていると誤解してしまう方がいるかもしれませんが、SlideオブジェクトではなくSlideオブジェクトの子であるShapesコレクションにTitleプロパティは用意されています。

タイトルプレースホルダーも所詮はShapeオブジェクトですから、位置を表すLeftプロパティやTopプロパティを持っています。

Shapes.HasTitleでスライドタイトルが存在するかを判定

タイトルプレースホルダーがないスライドでShapes.Titleが評価されると実行時エラーが発生してしまうので、ShapesコレクションのHasTitleプロパティで、

VBAでスライドタイトルの左上位置を取得する

スライドタイトルが存在するかを事前に判定しています。
  With ActivePresentation.Slides(1).Shapes
   If .HasTitle Then

[スポンサードリンク]

Home » パワーポイントマクロ・PowerPoint VBAの使い方 » プレースホルダー » VBAでスライドタイトルの左上位置を取得する

「プレースホルダー」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.