无法在Excel程序中设置PageSetup类的Orientation属性

Nag*_*Nag 4 .net

我在.Net中编写了以下代码

excel = New Excel.Application
wBook = excel.Workbooks.Add()
wSheet = wBook.ActiveSheet()
wSheet.PageSetup.Orientation = XlPageOrientation.xlLandscape
Run Code Online (Sandbox Code Playgroud)

当我从本地系统运行它时,它正在工作,当我将其复制到服务器时,将从一个服务运行,给出以下错误.

无法设置PageSetup类的Orientation属性

小智 6

Excel的PageSetup类必须与服务器上的打印机驱动程序进行交互.如果没有安装打印机驱动程序或限制访问它们,则对此类的任何调用都会抛出异常.

您应该确保在服务器上设置了默认打印机,并且安装了打印机驱动程序.此外,如果您从ASP.net访问它有访问问题,您应该确保ASP.Net帐户有权访问打印机.请参阅此文章,其中详细介绍了一些问题:http://support.microsoft.com/?id = 291298

通常,如果您使用的是Office 2007或更高版本,则应避免服务器端自动化,因为这会产生不稳定的行为 - 如果可能,请使用Open XML格式.请参见http://support.microsoft.com/kb/257757