使用VBA ExportAsFixedFormat将Excel转换为PDF到Sharepoint

时间:2019-06-12 17:27:06

标签: excel vba

我正在尝试将Excel中的工作表上的数据以PDF格式保存到共享点站点上。主工作簿有多张工作表,每张工作表都有不同的部分,并且播放到不同的位置。我关注的是一张纸,只需要将其副本另存为PDF即可共享。

一周前我已经完成了这项工作,但是现在当我尝试运行此代码时,它似乎陷入了ExportAsFixedFormat步骤。我将看到工作表完全变成灰色,然后变成白色,然后出现进度条,上面写着“发布中”,并不断地停留在95%左右。没有错误出现,我只需要强制Excel关闭即可。

我已经对其进行了测试,仅使用以下代码具有相同的结果:

ActiveWorkbook.ExportAsFixedFormat _
    Type:=xlTypePDF, _
    Filename:="\\source.domain.com@SSL\Departments\Finance\Reports\Monthly\File%20Name.pdf", _
    Quality:=xlQualityStandard, _
    IncludeDocProperties:=True, _
    IgnorePrintAreas:=False, _
    OpenAfterPublish:=False

文件名确实包含空格。 我尝试使用https://source.domain.com/Departments/Finance/Reports/Monthly作为路径。 如果我在excel中手动导出它,请执行以下操作:转到文件>导出>创建PDF / XPS,然后在独立模块中仅运行该代码。但是,一旦我将其应用于以下代码,它就会再次开始出错。

Function SaveTotalSheet()
    Dim TWs As Worksheet

    Set TWs = ThisWorkbook.Sheets("Total Sheet")
    TheYear = Format(DateSerial(Year(Now), Month(Now) + 1, 1), "yyyy")
    DocDate = Format(DateSerial(Year(Now), Month(Now) + 1, 1), "yyyy mm dd")

    TWs.Copy

    Application.DisplayAlerts = False

     ActiveWorkbook.ExportAsFixedFormat _
        Type:=xlTypePDF, _
        Filename:="\\source.domain.com@SSL\Departments\Finance\Reports\Monthly\File%Name.pdf", _
        Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, _
        IgnorePrintAreas:=False, _
        OpenAfterPublish:=False

    Application.DisplayAlerts = True
    ActiveWorkbook.Close False

    Call ClearContents

End Function

如果我将文件名定向到本地计算机,并且可以将xlsx作为SaveAs函数正确地存储到任一目录,则此代码将成功运行。

在这一点上,我完全不知所措,不确定自从不到一周前工作以来发生了什么变化。自问题开始以来,我一直尝试删除各种代码。

我希望有人对我的失踪有所了解。

0 个答案:

没有答案