0

我需要以 56(0、56、112 等)的步长向演示文稿中的每张幻灯片添加编号从 0 到 1400 的图像序列,然后使背景透明

到目前为止,我有:

Sub InsertImage()

ActiveWindow.Selection.SlideRange.Shapes.AddPicture( _
 FileName:="C:\Folder\Image0.bmp", _
 LinkToFile:=msoFalse, _
 SaveWithDocument:=msoTrue, Left:=25, Top:=90, _
 Width:=265, Height:=398.5).Select

End Sub

Sub MakeTransparent()

  With ActiveWindow.Selection.ShapeRange
     .PictureFormat.TransparentBackground = msoTrue
     .PictureFormat.TransparencyColor = RGB(41, 41, 241)
     .Fill.Visible = msoFalse
  End With

End Sub

哪个会单独做每一个,但这并不比一个一个做更快?

任何帮助深表感谢!

谢谢,

劳伦

4

1 回答 1

2

假设您想从幻灯片 1 开始,并且您已经在演示文稿中有足够的幻灯片来包含所有图像,请尝试这样的事情(总空气代码):

Sub InsertImages()

Dim lImageNumber as Long
Dim lSlideNumber as Long 
Dim oSh as Shape

lSlideNumber = 1  ' Slide counter

For lImageNumber = 0 to 1400 Step 56
   Set oSh = ActivePresentation.Slides(lSlideNumber).Shapes.AddPicture( _
     FileName:="C:\Folder\Image" & cstr(lImageNumber) & ".bmp", _
     LinkToFile:=msoFalse, _
     SaveWithDocument:=msoTrue, Left:=25, Top:=90, _
     Width:=265, Height:=398.5)

     lSlideNumber = lSlideNumber + 1

    With oSh
     .PictureFormat.TransparentBackground = msoTrue
     .PictureFormat.TransparencyColor = RGB(41, 41, 241)
     .Fill.Visible = msoFalse
    End With

Next

End Sub
于 2013-07-30T14:13:02.130 回答