在没有实际 Excel 的情况下使用 Microsoft.Office.Interop.Excel?

2023-11-27

我在用着Microsoft.Office.Interop.Excel在 VB.Net 中,以便将 .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.Office.Interop.Excel 程序集不包含处理代码。它本质上是一个元数据程序集,告诉 .NET 如何与 Excel 对话。在未安装 Excel 的情况下尝试进行任何处理时,它是没有用的。

有相当多的免费库可以创建和操作 Excel 文件 - 您指出的 Stackoverflow 问题有一些,其他库在 CodePlex 上。如果您需要对具有特殊格式要求的工作表进行计算或渲染,您可能最好研究以最低价格获取 Excel 许可证的选项,或者迁移到不同的体系结构。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在没有实际 Excel 的情况下使用 Microsoft.Office.Interop.Excel? 的相关文章

  • 使用 C# 在 Excel 中查找和替换文本

    我想使用 C 在 Excel 中查找并替换一组文本 而且我希望此替换仅发生在第一行中的文本 我已经使用Google并找到了一些付费资源 例如Aspose API Spire Xls等 但我正在寻找开源资源或任何其他有效的方法来实现这一目标
  • 在 Python 中绘制 Excel 中的数据

    我必须从 Excel 文件中读取和绘制数据的代码是这样的 import pandas as pd import matplotlib pyplot as plt excel file file1 xlsx file1 pd read exc
  • Excel ISNUMBER 函数与 IF 语句

    我有一个正在使用的 Excel 文件 有一个列包含数字和文本 有时只是其中之一 我正在尝试编写一个函数来扫描单元格的最左侧部分以查看它是否以数字开头 我以为我拥有它 但显然没有 这就是我所拥有的 IF ISNUMBER LEFT E8 1
  • Excel Add In - console.log 在哪里输出它的消息 - NodeJS

    我正在尝试使用 JavaScript API 创建 Excel 插件 但我不明白 console log 在哪里输出它们的消息 所有 Microsoft 文档都包含 console log 示例 但没有解释 console log 输出消息
  • 如何使用 pdftk 和 /MediaBox 裁剪 PDF 边距

    I used pdftk解压缩 PDF 然后将其作为文本文件打开 我想编辑 媒体盒领域 就我而言 MediaBox 0 0 612 792 例如 我想减少边距 MediaBox 100 0 512 792 不幸的是它不起作用 我可以改变0
  • 无法在 MARSHAMALLOW 文件选择器中选择 pdf、doc、ppt 等文件

    我正在使用我的 Android 应用程序将 pdf ppt doc 等文件上传到服务器 但在 Marshmallow 中 当文件选择器打开并且我浏览我的 Sdcard 或内部存储时 存在两个问题 1 它显示了所有我无法选择的文件 例如图像
  • VB.NET - 类中的扩展函数?

    我正在尝试创建一个类库 其中包含将二进制整数转换为十进制的函数 反之亦然 这样我就可以将其导入到另一个项目中 而无需重写该函数 它工作得很好 这是课程的一部分 Public Class BinaryDenary Public Shared
  • VBA 写入文件时对数值进行四舍五入 - 如何防止?

    在下面的代码中 我在确保文件编写器不会将我的数字四舍五入到一定的小数位数时遇到问题 我需要使用变体 因为有时该值是字符串 有时它是数字 我怎样才能强制它准确地写出变量是什么 例如 下面的代码可能显示 0 00038 我想显示确切的值 Dim
  • 在 ASP.Net Core 2.0 中导出到 Excel

    我曾经使用下面的代码在 ASP NET MVC 中将数据导出到 Excel Response AppendHeader content disposition attachment filename ExportedHtml xls Res
  • 仅从 PDF 中提取粗体文本的最佳方法

    iTextSharp 是一个很棒的工具 我可以使用PdfTextExtractor GetTextFromPage reader iPage 它工作得很好 但是有没有办法从 pdf 中只提取粗体文本 例如标题 而不是所有内容 无论编程语言如
  • excel vba 中的智能卡和 ISO 7816 入门 ( SCardEstablishContext )

    我刚刚收到了标准的便宜货USB 智能卡读卡器 http stanleyglobaltech com sgt111 html 我正在尝试找出如何使用 Excel 中的 VBA 与其进行交互 我在尝试在工作簿中创建基本智能卡功能时编写了此内容
  • 如何从特定类获取特定链接?

    我想提取这个href从那个特定的class tr class even td a href italy serie a 2015 2016 Serie A 2015 2016 a td 这是我写的 Sub ExtractHrefClass
  • 如何在 XAML/WPF 中存储和检索多个形状?

    使用 XAML WPF 做一些简单的事情似乎遇到了很多问题 我已经使用矩形和椭圆形等形状创建了一些基于 XAML 的图像来创建我需要应用程序的其他部分使用的图标 但我不能似乎找到了如何做到这一点 我似乎能够在资源字典中存储画布 但无法在任何
  • vb.net:查找字符串中字符串的位置?

    vb net 中是否使用 instr 来实现此目的 使用 String IndexOf http msdn microsoft com en us library system string indexof aspx http msdn m
  • 英文日期差异

    接近重复 如何计算相对时间 https stackoverflow com questions 11 how do i calculate relative time 如何在 C 中计算某人的年龄 https stackoverflow c
  • 从新的 xlsx 文件中删除宏

    功能部分 下面的代码将 xlsm 文件中的 2 个选项卡保存到新的 xlsx 文件中 文件保持打开状态以进行编辑 错误 xlsm 选项卡在工作表代码中有触发器 该触发器无效 一旦在 xlsx 工作表中输入任何内容 就会导致错误 所需输出 编
  • Excel VBA 多张表求和

    我正在尝试创建一个或多个函数 可以将每个客户的考勤卡每日工作时间相加 得出每天的总工作时间 每个客户在一个工作簿中都有自己的工作表 目前 我有一个函数可以确定与第一个客户一起使用的工作表 工作簿中的第三个工作表 Function First
  • 如何在自定义用户控件(.Net 4、Winforms)上使用项目集合编辑器?

    我创建了一个UserControl其中包含一个自定义ToolStrip Control 在使用时UserControl在整个应用程序中 ToolStrip控件不能直接访问 因为它逻辑上嵌入在UserControl 因此 要访问的项目Tool
  • Excel 2007 问题:预编程按钮突然不起作用[重复]

    这个问题在这里已经有答案了 今天 出乎意料的是 我工作的公司使用的表格的按钮突然出现了问题 奇怪的是 它只影响我确信是 ActiveX 命令按钮的部分 而不会导致其他形状或下拉菜单出现问题 问题 按钮没有反应 当您单击时 他们不会访问代码
  • Gridview 错误:对 Bind 的调用格式不正确

    我有以下 gridview 代码

随机推荐

  • Inno 设置部分 [Run] 带条件

    我的病情需要帮助 Run 如果它是可能的 我需要运行取决于条件的命令 像这样 if UserPage Values 0 NC then FileName sys inetsrv appcmd exe Parameters set 或者其他方
  • 最大还是默认?

    从可能不返回行的 LINQ 查询获取最大值的最佳方法是什么 如果我只是这样做 Dim x From y In context MyTable Where y MyField value Select y MyCounter Max 当查询未
  • 使用 Python 将流写入 Google Cloud Storage

    我正在尝试迁移AWS Lambda函数写在Python到 CF 那个 即时解压缩并逐行读取 对每条线执行一些灯光变换 将未压缩的输出 一次一行或块 写入 GCS 输出 gt 2GB 但略小于 3GB 因此适合Lambda just 嗯 这似
  • Resttemplate表单/多部分:POST中的图像+ JSON

    我正在尝试调用一个rest ws 使用resttemplate 它接受图像和一些JSON 但是 我似乎无法让它运行 相关代码如下 HttpHeaders header new HttpHeaders header setContentTyp
  • Python 将轴上的日期转换为月份

    我有一个时间序列 我想逐年绘制 我希望数据是每日的 但轴将每月显示为 一月 二月 等 目前我可以获得每日数据 但轴是 1 366 一年中的某一天 或者我可以将每月轴设置为 1 2 3 等 通过将索引更改为 df index month 但数
  • 如何在 Next.js 静态站点生成中获取 URL 查询字符串?

    我想从 Next js 静态站点生成的 URL 获取查询字符串 我在 SSR 上找到了一个解决方案 但我需要一个用于 SSG 的解决方案 Thanks import useRouter from next router import use
  • C# 部署我的应用程序 - 仅从 Web 单击一次

    所以我用 C 开发了我的应用程序 我已准备好部署它 我想让用户始终从我的网站启动它 以便他们始终获得更新 无需安装等 ClickOnce 是执行此操作的正确方法吗 我尝试将 ClickOnce 部署到我的服务器上 但我发现了一些事情 1 用
  • 开源 Telnet Java API

    是否有适用于 Java 的开源 telnet API 库 例如 Python telnetlib 我需要使用 telnet 连接到服务器并从 Java 程序中执行一些命令 我更喜欢使用 Apache Commons Net 库 http c
  • 使用复选框绑定到具有强类型 MVC 视图的布尔列表列表字典

    我正在使用 MVC 4 Net 4 和 Visual Studio 2012 我正在尝试将一个相当复杂的模型与我的观点之一结合使用 但在使其正确绑定方面遇到了严重的困难 该模型用整数键和布尔列表列表值来包装字典 基本上 搜索是对由整数指示的
  • 位字节顺序如何影响 C 中的按位移位和文件 IO?

    Let L and B是两台机器 L订购它的bits从最低有效位 最低有效位 到 MSB 最高有效位 同时B命令 从 MSB 到 LSB 或者 换句话说 L使用 Little Endian 而B使用大尾数法bit 不要与字节排序相混淆 问题
  • 关闭实体框架 CTP5 中的对象缓存

    我无法弄清楚 CTP 5 中实体框架代码优先的内容 它正在缓存对象 但我不希望它这样做 例如 我加载一个加载对象的页面 使用 ASP NET MVC 站点 然后我去更改数据库 我重新加载页面 但更改没有反映出来 如果我终止该网站并重新运行它
  • iOS:键盘出现时禁用 UITableView 动画

    每个人都想在键盘弹出时移动 UITableView 但我正在寻找一种方法来禁用键盘弹出时光标的自动动画 当键盘弹出并导致 UITableView 滚动到光标 以避免阻塞它 时 我遇到了奇怪的抽动 颠簸 不稳定的滚动行为 我的每个 UITab
  • PHP 捕获 SimpleXMLElement 解析错误 [关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 我有一个脚本可以解析一些 XML adf 内容 有时我
  • 如何在 Play 框架 2.0 (Java) 中重定向到外部 URL

    通过使用控制器中的redirect 方法似乎可以重定向到内部URL public static Result index return redirect routes Application tasks 但是我想重定向到控制器中的外部 UR
  • 在 Ubuntu OpenJDK 7 上启用密码

    我编写了以下 Java 程序来转储 JVM 中启用的密码 import java security KeyStore import javax net ssl KeyManagerFactory import javax net ssl S
  • const 引用必须在构造函数基类/成员初始值设定项列表中初始化

    我试图阻止对我正在编写的类的默认构造函数的访问 我希望其他人使用的构造函数需要对另一个对象的 const 引用 我已将默认构造函数设为私有 以防止其他人使用它 我收到默认构造函数的编译器错误 因为 const 引用成员变量未正确初始化 我该
  • 除 ffmpeg x264 之外的 H264 编码器

    我正在开发的 iPhone 应用程序会在特定的用户定义的时间间隔内连续捕获图像 我正在寻找一种将这些图像组合成 H264 编码视频的方法 我在 Google 上做了一些研究 看起来我必须在 iPhone 上使用 ffmpeg mencode
  • LINQ to SQL:多列左连接

    首先 我搜索了 google SO 检查了一些示例 但我没有设法编写正确的 linq 表达式 这就是我的工作 sql 查询的样子 select from Places p left join VoteLog v on p Id v Plac
  • 为什么我的应用服务的 Kudu 网站显示 503 服务不可用

    我在将容器部署到 Azure 中的应用程序服务时遇到问题 在发布管道中 我看到以下错误 调试 放置 https iagadsca01 cac app salesforcedownstream 01 iagadsca01 cac app sa
  • 在没有实际 Excel 的情况下使用 Microsoft.Office.Interop.Excel?

    我在用着Microsoft Office Interop Excel在 VB Net 中 以便将 xls 文件导出为 pdf 文件 这是我能找到的唯一方法 无需依赖在运行的计算机上安装第三方软件或使用昂贵的 Visual Studio 附加