'使用方法:把ppt文件拖放到该文件上。 '机器上要安装Powerpoint程序 On Error Resume Next Set ArgObj = WScript.Arguments pptfilepath = ArgObj(0) imgType = InputBox("输入导出文件的格式,可以是jpg,png,bmp,gif","输入导出文件的格式","png") If imgType = "" Or (LCase(imgType)<>"jpg" And LCase(imgType)<>"png" And LCase(imgType)<>"bmp" And LCase(imgType)<>"gif") Then imgType = "png" MsgBox "输入不正确,以png格式输出" End If imgW = InputBox("输入导出图像的宽度","输入导出图像的宽度","640") If imgW = "" Or IsNumeric(imgW)=False Then imgW = 640 MsgBox "输入不正确,程序使用默认值:640" End If imgH = InputBox("输入导出图像的高度","输入导出图像的高度","480") If imgH = "" Or IsNumeric(imgH)=False Then imgH = imgW*0.75 MsgBox "输入不正确,程序使用默认值:"&imgH End If Call Form_Load(pptfilepath,imgType) Private Sub Form_Load(Filepath,format) If format = "" Then format = "gif" End If Folderpath = Left(Filepath,Len(Filepath)-4) If LCase(Right(Filepath,4))<>".ppt" Then Call ConvertPPT(Filepath,Folderpath&".ppt") End If Filepath = Folderpath&".ppt" CreateFolder(Folderpath) Set ppApp = CreateObject("PowerPoint.Application") Set ppPresentations = ppApp.Presentations Set ppPres = ppPresentations.Open(Filepath, -1, 0, 0) Set ppSlides = ppPres.Slides For i = 1 To ppSlides.Count iname = "000000"&i iname = Right(iname,4)'取四位数 Call ppSlides.Item(i).Export(Folderpath&""&iname&"."&format, format, imgW, imgH) Next Set ppApp = Nothing Set ppPres = Nothing End Sub Function CreateFolder(Filepath) Dim fso, f On Error Resume Next Set fso = CreateObject("Scripting.FileSystemObject") If Not fso.FolderExists(Filepath) Then Set f = fso.CreateFolder(Filepath) End If CreateFolder = f.Path Set fso = Nothing Set f = Nothing End Function Sub ConvertPPT(FileName1, FileName2) Dim PPT Dim Pres Set PPT = CreateObject("PowerPoint.Application") Set Pres = PPT.Presentations.Open(FileName1, False, False, False) Pres.SaveAs FileName2, , True Pres.Close PPT.Quit Set Pres = Nothing Set PPT = Nothing End Sub