vb.net – 使用Microsoft.Office.Interop.Excel而不实际拥有Exce
发布时间:2020-12-17 07:22:13 所属栏目:百科 来源:网络整理
导读:我在VB.Net中使用Microsoft.Office.Interop.Excel,以便将.xls文件导出为.pdf文件.这是我唯一能够找到的方法,而不依赖于在运行的计算机上安装第三方软件或使用昂贵的Visual Studio附件.此方法需要打开excel并通过代码保存文件. 我的问题是我只有Microsoft Off
我在VB.Net中使用Microsoft.Office.Interop.Excel,以便将.xls文件导出为.pdf文件.这是我唯一能够找到的方法,而不依赖于在运行的计算机上安装第三方软件或使用昂贵的Visual Studio附件.此方法需要打开excel并通过代码保存文件.
我的问题是我只有Microsoft Office的试用版,因为我从未真正使用它.好吧,我可以打开它的时间限制,因为我已经运行程序足够的时间用于调试目的,现在我无法继续开发此应用程序.是否有针对Visual Studio的开发工具包,它提供了此功能所需的API,而无需实际安装Office?我不需要Microsoft Office,因此我不想购买完整版本来开发和测试应用程序. 我已经看了一些像this这样的选项,但是有非常具体的格式需要在.xls中保持原样,以便转换为.pdf,如果我使用中间格式,它似乎不起作用. 我还阅读了一些关于openOffice API的内容,但它与.Net兼容吗?如果是这样,有人可以指点我的教程,解释如何使用.Net的API?如果可能的话,特别是VB,但我可以使用C#代码. 以下是我尝试做的一个示例,以防它有助于提出建议: Dim fileName As String = AppDomain.CurrentDomain.BaseDirectory & "LOA " & compName.Text & ".xls" Dim xlsApp = New Microsoft.Office.Interop.Excel.Application xlsApp.ScreenUpdating = False Dim xlsBook As Microsoft.Office.Interop.Excel.Workbook Dim paramExportFormat As XlFixedFormatType = XlFixedFormatType.xlTypePDF Dim paramExportQuality As XlFixedFormatQuality = XlFixedFormatQuality.xlQualityStandard Dim paramOpenAfterPublish As Boolean = False Dim paramIncludeDocProps As Boolean = True Dim paramIgnorePrintAreas As Boolean = True Dim paramFromPage As Object = Type.Missing Dim paramToPage As Object = Type.Missing xlsBook = xlsApp.Workbooks.Open(fileName,UpdateLinks:=False,ReadOnly:=False) xlsBook.ExportAsFixedFormat(paramExportFormat,AppDomain.CurrentDomain.BaseDirectory & "LOA " & compName.Text & ".pdf",paramExportQuality,paramIncludeDocProps,paramIgnorePrintAreas,paramFromPage,paramToPage,paramOpenAfterPublish) xlsBook.Close(SaveChanges:=False) xlsApp.Quit() 解决方法
您可以安装Microsoft Primary Interop Assemblies Package.你可以找到它
here
不过要小心.不同的办公室版本有不同的包. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |