“如何制作”;在VBA Powerpoint中选择保存对话框的位置;
我搜索了一种方法,当按下幻灯片上的操作按钮时,在幻灯片放映模式下将当前幻灯片另存为图片。这就是我最后想到的:“如何制作”;在VBA Powerpoint中选择保存对话框的位置;,vba,vb6,powerpoint,savefiledialog,Vba,Vb6,Powerpoint,Savefiledialog,我搜索了一种方法,当按下幻灯片上的操作按钮时,在幻灯片放映模式下将当前幻灯片另存为图片。这就是我最后想到的: `Sub SaveCurrentSlideAsJpg()` Dim imagePath As String Dim slideNum As Integer imagePath = "C:\Users\XXXXX\Pictures\Slides\" slideNum = ActivePresentation.SlideShowWindow.View.Slide.SlideIndex
`Sub SaveCurrentSlideAsJpg()`
Dim imagePath As String
Dim slideNum As Integer
imagePath = "C:\Users\XXXXX\Pictures\Slides\"
slideNum = ActivePresentation.SlideShowWindow.View.Slide.SlideIndex
' first check if this already exists then delete it
If Dir(imagePath & ActivePresentation.Name & "_" & slideNum & ".jpg") <> ""
Then
Kill imagePath & ActivePresentation.Name & "_" & slideNum & ".jpg"
End If
' now save the slide
ActivePresentation.SlideShowWindow.View.Slide.Export _
FileName:=imagePath & ActivePresentation.Name & "_" & slideNum & ".jpg", _
FilterName:="JPG"
End Sub
`Sub-SaveCurrentSlideAsJpg()`
将imagePath设置为字符串
Dim slideNum作为整数
imagePath=“C:\Users\XXXXX\Pictures\Slides\”
SlideEnum=ActivePresentation.SlideShowWindow.View.Slide.SlideIndex
'首先检查此项是否已存在,然后将其删除
If Dir(imagePath&ActivePresentation.Name&“&slideNum&“.jpg”)“”
然后
Kill imagePath&ActivePresentation.Name&“_”&slideNum&“.jpg”
如果结束
“现在保存幻灯片
ActivePresentation.SlideShowWindow.View.Slide.Export_
文件名:=imagePath&ActivePresentation.Name&“”&slideNum&“.jpg”_
过滤器名称:=“JPG”
端接头
这很好,只是它会保存到我电脑上的默认位置。我会将它提供给其他人,我需要一个对话框,每当他们尝试保存时会弹出,询问他们保存到哪里。我所有的尝试都没有成功。如果有人能帮我,我将不胜感激。谢谢您可以使用此功能选择文件夹:
Function BrowseForFolder(dialogTitle As String) As String
Dim fd As FileDialog
Set fd = Application.FileDialog(msoFileDialogFolderPicker)
With fd
.Title = dialogTitle
.Show
If .SelectedItems.Count = 0 Then
' Browsing cancelled by user.
BrowseForFolder = ""
Else
BrowseForFolder = .SelectedItems.Item(1)
End If
End With
End Function
因此,您可以执行以下操作,而不是硬编码imagePath
:
imagePath = BrowseForFolder("Save image in this folder...")