Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 无法在mac中从VBA另存为PDF_Excel_Vba_Macos - Fatal编程技术网

Excel 无法在mac中从VBA另存为PDF

Excel 无法在mac中从VBA另存为PDF,excel,vba,macos,Excel,Vba,Macos,我正试图通过VBA将图纸保存为PDF格式。下面是我编写的代码 Sheets("PO Format").PageSetup.PrintArea = "$B$6 : $J$42" Sheets("PO Format").Range("B6:J42").ExportAsFixedFormat Type:=xlTypePDF, Filename:=Sheets("User Settings").Range("B15") & "/" & Sheets("PO Format").Range(

我正试图通过VBA将图纸保存为PDF格式。下面是我编写的代码

Sheets("PO Format").PageSetup.PrintArea = "$B$6 : $J$42"
Sheets("PO Format").Range("B6:J42").ExportAsFixedFormat Type:=xlTypePDF, Filename:=Sheets("User Settings").Range("B15") & "/" & Sheets("PO Format").Range("F7"), Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=True

奇怪的是,它在一个系统上运行良好,我可以将它保存在上面提到的路径上,然后发送邮件,但在另一个系统上测试时,我得到的错误是“打印时出错”。毫无头绪。有人能帮忙吗?

请确保安装了Excel SaveAsPDFandXPS加载项,如果适用于Mac,您应该可以在Microsoft网站上找到它,它是免费的。安装它,那么代码就可以正常工作了

在Mac Office 2016中,Microsoft必须处理Apple的沙箱要求,因为VBA需要访问文件夹的权限,而在尝试通过VBA保存时,不会出现提示,而是出现错误。但是Mac上有几个地方可以让代码在没有用户交互的情况下完成它需要做的事情

其中一个路径是/Users/username/Library/Group Containers/UBF8T346G9.Office 安装Office 2016时将创建此文件夹

所以我把PDF保存到这个文件夹中,把它移动到所需的位置,现在它可以正常工作了


有关详细信息和代码,请浏览

目标机器是否有PDF打印驱动程序?你能在这台机器上手动打印到PDF吗?@目标数据是的,我能手动打印。我找不到excel 2016的任何此类加载项,我可以手动将其保存为PDF,但通过代码,我在打印错误时得到错误。加载项用于2007。如果您正在使用2016,则无需获取它