2011-01-18 3 views
1

私はPowerPointでvbaを使用しています。私は指定されたフォルダから元の画像ファイルをより小さなサイズに圧縮しようとしています。私はそれを達成することができました。しかし、新しい圧縮画像を保存先のフォルダに保存したい。PowerPoint VBA:プレゼンテーション全体ではなく、特定のファイル形式で画像を保存するにはどうすればよいですか?

次のコードは、プレゼンテーションまたはスライドを画像とともに保存します。しかし、私はその写真がほしいだけです。私はかなり私がActivePresentation.SaveAsを使用する必要があると確信しています。しかし、それは私にスライドを保存させるだけです。どのように写真を保存するだけで&スライドですか?

また、変更した画像を保存しようとすると別の問題があるようです。プレゼンテーションをファイル名が "Slide1.bmp"である宛先のフォルダに保存します。どんなアイデアなのですか&どうすれば変更できますか?次の応答のための

Dim strSrcPath As String, strDestPath As String 
Dim strSrcPic As String 
Dim objPic As Shape 
Dim x as Integer 

strSrcPath = "C:\Temp\Pics\In\" 
strDestPath = "C:\Temp\Pics\Out\" 

strSrcPic = Dir(strSrcPath)  

Do While strSrcPic <> "" 
    x = x + 1 
    Set objPic = ActiveWindow.Selection.SlideRange.Shapes.AddPicture(FileName:=strSrcPath & strSrcPic, _ 
     LinkToFile:=msoFalse, SaveWithDocument:=msoTrue, Left:=0, Top:=0, Width:=100, _ 
     Height:=100) 
    With objPic 
     .ScaleHeight 1, msoTrue 
     .ScaleWidth 1, msoTrue 
    End With 

    objPic.Select 

    ActivePresentation.SaveAs _ 
     FileName:=strDestPath & "ModPicture(" & x & ").bmp", _ 
     FileFormat:=ppSaveAsBMP, EmbedTrueTypeFonts:=msoFalse 
    objPic.Delete 
    strSrcPic = Dir 'Get next entry. 
Loop 
+1

Powerpoint VBAは間違ったツールです。オンラインで入手できる多数のフリーバルクイメージリサイザーがあります。 – SLaks

答えて

1

おかげ@JSRWilson:

は、「あなたはビューで右クリック>オブジェクトブラウザ>>ショー隠しメンバーに持っているん objPicはまだ圧縮PICへの参照であると仮定すると、

objPic.Export(strDestPath & "& "ModPicture(" & x & ").bmp", ppSaveAsBMP) "

+0

この回答の横にある黄色いチェックマークをチェックして受け入れることができます。 –

関連する問題