Excel VBA宏将pdf保存到特定文件路径

时间:2018-05-18 08:11:39

标签: excel vba excel-vba

尝试创建一个excel宏按钮,创建并保存一系列数据的pdf,宏在我的电脑上运行没有问题。

但是我需要共享excel工作簿,我们不使用我们使用Dropbox的网络,因此我的文件路径通过我的用户名保存:“C:\Users\Username\...Dropbox

我可以删除我的名字,以便打开文件的人可以使用宏吗?

这是我到目前为止创建的代码,虽然它仍可在我的笔记本电脑上运行,但它不适用于其他用户:

Sub Create_PTC_pdf()
    Range("A76:G137").Select
    ActiveSheet.PageSetup.PrintArea = "$A$76:$G$137"
    ChDir "C:\Users\" & Range("F168").Text & "\Dropbox"
    ActiveSheet.ExportAsFixedFormat _
        Type:=xlTypePDF, _
        Filename:= "C:\Users\" & Range("F168").Text & "\Dropbox " & Format(Date, "yyyy mm dd") & Range("O142").Text & ".pdf", _
        Quality:=xlQualityStandard, _ 
        IncludeDocProperties:=True, _
        IgnorePrintAreas:=False, _
        OpenAfterPublish:=True
End Sub

Range("F168").Text引用一个单元格,用于获取工作簿中任何人的用户名。

1 个答案:

答案 0 :(得分:1)

试试这个:

Sub Create_PTC_pdf()

    Dim sPath As String

    sPath = Environ("userprofile") & "\Dropbox\"

    With ActiveSheet
        .PageSetup.PrintArea = "$A$76:$G$137"
        .ExportAsFixedFormat _
            Type:=xlTypePDF, _
            Filename:=sPath & Format(Date, "yyyy mm dd") & .Range("O142").Text & ".pdf", _
            Quality:=xlQualityStandard, _
            IncludeDocProperties:=True, _
            IgnorePrintAreas:=False, _
            OpenAfterPublish:=True
    End With

End Sub