この人頭いいなと思ったエピソード

OSはXP、パワーポイント2003を使っています。スライドが15枚あります。15枚には3パターンで使用するスライドが入っています。パターン1では必要なスライドは8枚、パターン2では10枚、パターン3では13枚です。不要なスライドを削除するために、ネットで調べてマクロによる削除まで出来ました。スライドの削除は途中のスライドを削除したりするので、表題に付与している項目番号が変わります。
表題の項目番号はスライドの一番左上に記載しています。
マクロで文中に「1-(1)」「1-(2)」「1-(3)」「1-(4)」「2-(1)」「2-(2)」「3-(1)」を記載して、指定するスライドの左上に書き込むことは出来るでしょうか。もしくはマクロを実行させるPPTのファイルがあるのですが、これの2枚目以降のスライドに項目番号を記載し、コレをコピー&ペーストで実行することが出来るでしょうか。
教えていただける方、どうぞよろしくお願いします。

スライドを削除するVBAは下記で実行できました。
Sub pt1()
'
' マクロ記録日: 2012/5/28 ユーザー名:
Dim myPath As String
Dim PPTName As String
Dim ThisPresentation As Presentation
Dim CurrentPPT As Presentation

Set ThisPresentation = ActivePresentation

myPath = ActivePresentation.Path '自ファイルのパス取得
If Right$(myPath, 1) <> "\" Then
myPath = myPath & "\"
End If

PPTName = Dir(myPath & "会議資料(原本).ppt")
If PPTName <> ThisPresentation.Name Then
Set CurrentPPT = Presentations.Open(myPath & PPTName) 'ファイル開く
End If

ActiveWindow.View.GotoSlide Index:=15
ActiveWindow.Selection.SlideRange.Delete
ActiveWindow.View.GotoSlide Index:=14
ActiveWindow.Selection.SlideRange.Delete
ActiveWindow.View.GotoSlide Index:=13
ActiveWindow.Selection.SlideRange.Delete
ActiveWindow.View.GotoSlide Index:=12
ActiveWindow.Selection.SlideRange.Delete
ActiveWindow.View.GotoSlide Index:=11
ActiveWindow.Selection.SlideRange.Delete
ActiveWindow.View.GotoSlide Index:=10
ActiveWindow.Selection.SlideRange.Delete
ActiveWindow.View.GotoSlide Index:=9
ActiveWindow.Selection.SlideRange.Delete
ActiveWindow.View.GotoSlide Index:=8
ActiveWindow.Selection.SlideRange.Delete
ActiveWindow.View.GotoSlide Index:=7
ActiveWindow.Selection.SlideRange.Delete
ActiveWindow.View.GotoSlide Index:=4
ActiveWindow.Selection.SlideRange.Delete
ActiveWindow.View.GotoSlide Index:=3
ActiveWindow.Selection.SlideRange.Delete
ActiveWindow.View.GotoSlide Index:=1
ActiveWindow.Selection.SlideRange.Delete

MsgBox "作成終了"

End Sub

A 回答 (1件)

15枚づつ3セット分のスライドを複製して


不要なスライドを手で削除して
1枚目のスライドからハイパーリンクで目的別スライドショーにリンクするのではだめですか?

何でもマクロというのではなく
どうしても通常の方法ではできないことをマクロでやるのがいいです。
 ここに提示したマクロを考え質問している時間があれば、手作業でとっくに終わっているでしょう。
    • good
    • 0
この回答へのお礼

思ってもみなく、早期のご教示ありがとうございます。すごくうれしいです。
実は、説明がうまくなかったのですが、毎月月毎のデータをPPTに記載しています。それに加えて3ヶ月ごとの四半期には、毎月に追加したデータを、半年ごとには毎月と四半期のデータを記載した資料を作成しています。もともと3種類の(ご教示のあった3セット)資料を用意してそれぞれにデータを記載していたのですが、様式の変更や、記述の変更があったときは3種類とも修正が必要になることと、四半期、半期に記載する毎月データは四半期の場合、次の四半期の作成時は、3ヶ月前の毎月データが記載されているので、最新の毎月のデータと差異がないか、半期でも同様で、これを問題としています。ですから、様式を一本化しこれらのリスクを回避したいと考えました。
やはり、VBAでの対応は無理なのでしょうか?

お礼日時:2012/06/19 23:01

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!