
Powerpointファイルを開いて、
ホーム-配置-オブジェクトの選択と表示 でスライドのShapeオブジェクト一覧が表示されます。(添付画像参照)。このスライドから黄色い蛍光ペンで塗った、”コンテンツプレースホルダー2”の
Shapeオブジェクトを削除しようとして、下記のPowerpointVBAを実行しましたが、何も削除されません。コードをどう直せば動きますか? わかる方教えてください。
--<start of code>----
Sub delete()
Dim s As Shape 'sはshapeオブジェクトを入れる変数
Dim c As Collection 'cはコレクション
Dim start_slide As Integer 'start_slideはスライド番号1を入れる定数
Dim i As Integer 'iはスライド番号を入れる変数
start_slide = 1
For i = start_slide To ActivePresentation.Slides.Count
'If i = 254 Then
' GoTo continue
'End If
Set c = New Collection
For Each s In ActivePresentation.Slides(i).Shapes '変数sにアクティブスライド番号のすべてのshapeオブジェクトを入れる。
c.Add s
Next
For Each s In c
If InStr(s.Title, "コンテンツ") > 0 Then s.delete '★ここが重要!
Next
'continue:
Next
'MsgBox "the process is finished."
End Sub
--<end of code>----

No.2ベストアンサー
- 回答日時:
>If InStr(s.Title, "コンテンツ") > 0 Then s.delete '★ここが重要!
の「Title」を「Name」にするとどうでしょうか。
If InStr(s.Name, "コンテンツ") > 0 Then s.delete '★ここが重要!
If InStr(s.Name, "コンテンツ") > 0 Then s.delete '★ここが重要!
でうまく行きました。ありがとうございます。
No.1
- 回答日時:
>”コンテンツプレースホルダー2”のShapeオブジェクトを削除しようとして
>For Each s In ActivePresentation.Slides(i).Shapes '変数sにアクティブスライド番号のすべてのshapeオブジェクトを入れる。
>If InStr(s.Title, "コンテンツ") > 0 Then s.delete '★ここが重要!
全角表示を取得する方法は不明ですけど、とりあえずプレスホルダー名を取得しその結果としては。
Dim sl As Slide
Dim sh As Shape
For Each sl In ActivePresentation.Slides
For Each sh In sl.Shapes.Placeholders
Debug.Print sh.Name, ": " & InStr(sh.Name, "Placeholder 2")
Next
Next
結果:
Title 1 : 0
Subtitle 2 : 0
Title 1 : 0
Content Placeholder 2 : 9
Content Placeholder 3 : 0
みたいになりますね。
多分コントロール名だと思いますけど、半角文字が使われているようです。
と、ほぼPowerPointを使わないのでその先は良くわかりません。
WordVBAやっている方ならいけるんじゃないのかな?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 【VBA】写真の貼り付けコードがうまく機能しません。 5 2022/09/01 18:43
- Visual Basic(VBA) VBA Userformで一部別シートに転記がしたいのですが 2 2023/05/24 13:08
- Visual Basic(VBA) VBA This Workbookモジュールを別ファイルにコピーする方法 1 2022/09/14 01:51
- Visual Basic(VBA) VBAが止まります。 2 2022/09/02 14:02
- Excel(エクセル) フォルダ内のワードファイルをPDFに一括変換するVBA 3 2023/06/09 16:51
- Visual Basic(VBA) Excel VBAの解読について質問があります。 概要は、マクロでチェックボックスにチェックすると日 1 2023/02/10 07:50
- Visual Basic(VBA) ExcelVBAに関する質問 3 2023/02/17 10:47
- Visual Basic(VBA) ①ExcelVBAでカレンダーを作り、別のユザーフォームで日付を入力したいのですがエラーになります。 1 2023/02/17 18:39
- Visual Basic(VBA) 数字が「0」の列を削除するため、下記のコードを実行しましたが、コンパイルエラーSubまたはFunct 3 2022/12/04 00:00
- Visual Basic(VBA) EXCEL VBAにて動的にCheckBOXを複数作成し、同BOXにイベントを追加したい 1 2023/03/16 07:05
このQ&Aを見た人はこんなQ&Aも見ています
-
初めて見た映画を教えてください!
初めて見た映画を覚えていますか?
-
何回やってもうまくいかないことは?
みなさんには、何回やってもうまくいかないことはありますか?
-
コンビニでおにぎりを買うときのスタメンはどの具?
コンビニでおにぎりを買うとき、何の具材を選ぶことが多いですか?
-
洋服何着持ってますか?
洋服を減らそうと思っているのですが、何着くらいが相場なのかわかりません。
-
集中するためにやっていること
家で仕事をしているのですが、布団をはじめ誘惑だらけでなかなか集中できません。
-
パワーポイントのVBAでテキストボックスに値を変更させたいです
Visual Basic(VBA)
-
なぜマクロの記録がなくなってしまったのでしょうか?
Excel(エクセル)
-
ExcelVBAにて既に開かれているPowerpointをアクティブにするには?
Excel(エクセル)
-
-
4
【PowerPoint VBAの高速化】
その他(プログラミング・Web制作)
-
5
VBAでループ内で使う変数名を可変にできないか。
Visual Basic(VBA)
-
6
【VB.NET】 パワポ操作を非表示で
Visual Basic(VBA)
-
7
PPTのコマンドボタンがクリックできません
その他(Microsoft Office)
-
8
PowerpointVBAで複数のShapeオブジェクトを選択削除したい。
Visual Basic(VBA)
-
9
PowerPoint の VBA
Visual Basic(VBA)
-
10
エクセルマクロにてパワーポイントのリンク更新をさせたい
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・一番好きなみそ汁の具材は?
- ・泣きながら食べたご飯の思い出
- ・「これはヤバかったな」という遅刻エピソード
- ・初めて自分の家と他人の家が違う、と意識した時
- ・いちばん失敗した人決定戦
- ・思い出すきっかけは 音楽?におい?景色?
- ・あなたなりのストレス発散方法を教えてください!
- ・もし10億円当たったら何に使いますか?
- ・何回やってもうまくいかないことは?
- ・今年はじめたいことは?
- ・あなたの人生で一番ピンチに陥った瞬間は?
- ・初めて見た映画を教えてください!
- ・今の日本に期待することはなんですか?
- ・集中するためにやっていること
- ・テレビやラジオに出たことがある人、いますか?
- ・【お題】斜め上を行くスキー場にありがちなこと
- ・人生でいちばんスベッた瞬間
- ・コーピングについて教えてください
- ・あなたの「プチ贅沢」はなんですか?
- ・コンビニでおにぎりを買うときのスタメンはどの具?
- ・おすすめの美術館・博物館、教えてください!
- ・【お題】大変な警告
- ・洋服何着持ってますか?
- ・みんなの【マイ・ベスト積読2024】を教えてください。
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・最強の防寒、あったか術を教えてください!
- ・歳とったな〜〜と思ったことは?
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
アクセスVBAのMe!と[ ]
-
VBA エンターキーでイベントに...
-
文字列で小数点以下の0を削除し...
-
Excel VBAでマウスの左クリック...
-
Accessのフォーム上にエクセル...
-
現在アクティブになっているオ...
-
VB6にて文字型変数の内容をオブ...
-
エクセルVBAでセル番地を指定し...
-
GDIオブジェクトが増える……
-
VBAでフォームのコントロールの...
-
ユーザーフォームのインポート...
-
Excel2007 でのチェックボック...
-
Excel VBA でPictureBoxオブジ...
-
ACCESSマクロ、Me![氏名] その...
-
DLLの共有メモリと排他処理???
-
Doevents をご教授ください。
-
日本語の文字化けを直す方法
-
WebBrowserオブジェクトにて、...
-
【エクセル】複数のTextBoxに共...
-
エクセルVBA初心者です。オブジ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBA エンターキーでイベントに...
-
アクセスVBAのMe!と[ ]
-
Excel VBAでマウスの左クリック...
-
【エクセルのマクロ】クリップ...
-
Accessのフォーム上にエクセル...
-
文字列で小数点以下の0を削除し...
-
エクセルVBAでセル番地を指定し...
-
日本語の文字化けを直す方法
-
Excel2007 でのチェックボック...
-
コードでオブジェクトを最前面に
-
現在アクティブになっているオ...
-
【エクセル】複数のTextBoxに共...
-
ユーザーフォームのインポート...
-
PowerpointVBAで指定のShapeオ...
-
構造体の静的な初期化
-
Imageコントロールにグラフを表...
-
Excel VBA でPictureBoxオブジ...
-
ディスクの総セクタサイズを取...
-
Excelのシート上に設置された全...
-
Access からオブジェクトとして...
おすすめ情報