【问题标题】:Save PDF file automatically in new folder将 PDF 文件自动保存到新文件夹中
【发布时间】:2016-12-15 06:42:59
【问题描述】:

我有以下宏来在 Excel 文件所在的文件夹中创建一个文件夹:

Sub Folder_Test()
    If Dir(ThisWorkbook.Path & "\" & "Folder_01", vbDirectory) = "Folder_01" Then
        MsgBox "Folder already exists!"
    Else
        MkDir Application.ThisWorkbook.Path & "\" & "Folder_01"
    End If
End Sub

我有以下宏来创建 PDF 文件:

Sub Button_PDF_200()
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        ThisWorkbook.Path & "\" & "test.pdf", Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=True
End Sub

现在我希望将在第二个宏中创建的 PDF 文件保存在第一个宏中创建的文件夹中。

你知道我该怎么做吗?

【问题讨论】:

标签: excel vba


【解决方案1】:

也许就是这样?

Sub Button_PDF_200()
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        ThisWorkbook.Path & "\" & "Folder_01" & "\" & "test.pdf", Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=True
End Sub

这将更改子 Button_PDF_200 中的 Filename 参数从

ThisWorkbook.Path & "\" & "test.pdf"

ThisWorkbook.Path & "\" & "Folder_01" & "\" & "test.pdf"

【讨论】:

    【解决方案2】:

    .. 嗨,美智,

    你也可以试试这样的:

        pdfName = ActiveSheet.Range("T1")
        ChDir "C:\Temp\" 'This is where youo set a defult file path.
        fileSaveName = Application.GetSaveAsFilename(pdfName, _
        fileFilter:="PDF Files (*.pdf), *.pdf")
        If fileSaveName <> False Then
        ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, fileName:= _
            fileSaveName _
            , Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
            :=False, OpenAfterPublish:=True
        End If
        MsgBox "File Saved to" & " " & fileSaveName
    

    玩得开心!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-03-04
      • 2022-06-29
      • 1970-01-01
      • 1970-01-01
      • 2013-05-15
      • 1970-01-01
      • 2023-03-27
      • 1970-01-01
      相关资源
      最近更新 更多