PowerPoint のスライド毎に画像を貼り付けていくマクロ

comments(1) | trackback(1)

はてなブックマークに追加 はてなブックマーク数 del.icio.us に追加 livedoor クリップに追加 livedoor クリップ数 Yahoo!ブックマークに追加

  数百枚ある写真を 1 枚 1 枚 PowerPoint に貼り付けていくという気の遠くなる作業を頼まれたので作成.

Option Explicit

Public Sub addPhotoParPage()

    Dim i As Integer
    Dim strPath As String

    Dim objFileSystem As Object
    Dim objFolder As Object
    Dim objFile As Object

    strPath = BrowseForFolder()

    If strPath = "" Then
        Exit Sub
    End If

    Set objFileSystem = CreateObject("Scripting.FileSystemObject")
    Set objFolder = objFileSystem.GetFolder(strPath)

    i = 0
    For Each objFile In objFolder.Files
        ' スライドの追加
        ActivePresentation.Slides.Add( _
            Index:=ActivePresentation.Slides.Count + 1, _
            Layout:=ppLayoutText).Select
        ' 画像の挿入
        ActiveWindow.Selection.SlideRange.Shapes.AddPicture( _
            FileName:=objFile.Path, _
            LinkToFile:=msoFalse, _
            SaveWithDocument:=msoTrue, _
            Left:=0, _
            Top:=0).Select
        ' 50 回に一回 DoEvents 発生
        i = i + 1
        If i Mod 50 = 0 Then
            DoEvents
        End If
    Next

    Set objFile = Nothing
    Set objFolder = Nothing
    Set objFileSystem = Nothing

End Sub

Private Function BrowseForFolder(Optional varRoot As Variant) As String

    Dim objFolder As Object

    ' フォルダ選択ダイアログを表示
    Set objFolder = CreateObject("Shell.Application").BrowseForFolder( _
                                 0, _
                                 "画像があるフォルダを選択してください", _
                                 &H11, _
                                 varRoot)

    ' 選択内容を取得
    If Not (objFolder Is Nothing) Then
        BrowseForFolder = objFolder.Items.Item.Path
    Else
        BrowseForFolder = ""
    End If

    Set objFolder = Nothing

End Function

この記事へのコメント

お世話になります。

質問が稚拙で申し訳ないですが、まさに私が求めていたマクロなのですが、このマクロをどのようにしたらパワーポイントで使えるようになりますでしょうか。

バージョンは2002です。

宜しくお願いいたします。

やみー | 2008/10/22 (Wed) 22:02:14

この記事へのコメントを書く

名前:

メールアドレス (公開されません):

URL:

コメント (入力必須)

この記事へのトラックバック URL

http://cl.pocari.org/tb.php/2007-01-27-1

この記事へのトラックバック

PowerPoint のスライド毎に画像を貼り付けていくマクロ

PowerPointのスライドに指定したフォルダ内の画像ファイルを自動的に貼り付けていくマクロを作成し公開しているサイトがあります(ココ)。最...

プレゼンテーション方法論とその周辺 | 2009/04/07 (Tue) 01:48:27