如何自动将图表从 Excel(或 Calc)导出为 PNG

2024-05-26

问题:

我正在开发一个 Web 应用程序,它将数据从数据库导出到 Excel,包括图表,这首先是导出的主要原因。

现在我希望图表在网页上也可见,而不需要导出数据并打开下载的 Excel 文件。这当然可以使用 JS 库来完成,但是由于图表相当复杂,我想重新使用现有的导出到 excel 的方法,或者现在用 JS 重新编写它。

所需的解决方案:

因此,这是可能的最佳方案:如果可以将图表从 excel 文件导出为 png(或 jpg 或其他),甚至无需打开 excel 文件,例如从命令行或其他方式。而且生成的文件在 OpenOffice 中打开得很好,所以我可以使用它。然后我可以在服务器上导出到Excel,然后从Excel导出图像,然后将图像发送到客户端。

这样的事情有可能吗?如果第三方程序能起到作用,我并不反对它。如果不是,您认为针对这种情况的下一个最佳解决方案是什么?

我有 Excel 2016,并且我正在使用 PHPExcel 生成 excel 文件(如果这很重要的话)。

可能的解决方案:

一些不错的选择似乎是将文档另存为网页 https://www.ablebits.com/office-addins-blog/2013/08/27/save-excel-chart-as-image/,但我不知道您是否可以从命令行/不打开 Excel UI 来执行此操作。

还有开放办公API https://wiki.openoffice.org/wiki/API看起来不错,但我以前从未使用过它,你可以通过这个API(使用Java或其他东西)导出图表而不打开Calc UI吗?我知道开放办公室有 --invisible 选项,这可能很有用。


好吧,这会将图表导出为 .png 文件,但它会打开 excel 文件(然后关闭它),您可以尝试以下操作:

将其放入一个.vbs- 文件并通过控制台运行它。

    Set objXLS = CreateObject("Excel.Application")
    Set yWkbk = objXLS.Application.Workbooks.Open("C:\yourpath\yourfile.xls")
    'Sheet ID can change of course 
    Set yWksht = yWkbk.Sheets(1)
    Set yChart = yWksht.ChartObjects("yourchartname").Chart
    yChart.Export "C:\yourpath\yourfilename.png", "PNG"

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

如何自动将图表从 Excel(或 Calc)导出为 PNG 的相关文章

  • VBA - 填充自定义功能区下拉列表/列表框

    我无法填充下拉列表 列表框 原始代码来自 https exceloffthegrid com inserting a dynamic drop down in ribbon https exceloffthegrid com inserti
  • 可可豆荚图表未出现(Swift 4)

    我的图表未使用此条形图显示任何条形 我已成功导入图表可可豆荚 目前没有运行时错误 图表中唯一显示的是描述标签 import UIKit import Charts class ViewController UIViewController
  • Excel - 确定排列的奇偶性

    我正在处理一个 Excel 工作表 需要确定大小数字的垂直数组的奇偶校验N 该数组包含来自的每个数字1 to N每一次正好一次 在这种情况下 奇偶校验被定义为将加扰数组转换为从小到大排序的数组所需的交换次数 例如 数组 3 1 2 4 具有
  • 用户窗体上的类对象 TextBox 可用方法

    我注意到 当我为文本框创建类模块并在表单上使用它时 通过在表单 init 事件中通过 VBA 添加 Enter 或 Exit 方法都不可用 当然 如果我只是在表单中添加一个文本框 我可以让 DblClick 方法正常工作 因此我的类设置正确
  • 将按颜色过滤的行复制到新工作表

    我有一个 Excel 电子表格 如下所示 Job1 Job2 Job3 Job4 Job5 Job1 Job2 Job3 Job4 Job5 每行和列之间的单元格颜色不同 我需要按橙色对每列进行排序 然后将行名称复制到新工作表中 所以最后我
  • phpexcel xlsx 的千位分隔符

    我在用着 PHPExcel Shared String setThousandsSeparator 为 Excel 文件定义千位分隔符 多亏了它 单元格显示为55 452代替55452 不过 单元格值是整数 55452 因此可以对其进行计算
  • 将最后几个功能添加到我的调度模板生成器中

    感谢 StackOverflow 上的一些出色的人 我几乎完成了调度模板生成器的代码 我还想补充三件事 但我遇到了一些麻烦 当前细分 我有两张表 2 员工列表 和 X 模板 员工列表中的值是从单元格 D9 开始的一列员工姓名 然后将员工值转
  • Google Charts:通过 document.write 调用解析器阻塞的跨站点

    当我尝试加载 Google Charts 脚本时 我收到上述消息 我很确定问题是我正在尝试使用 jQuery 加载数据表getJSON方法 但我已经阅读了答案这个问题 https stackoverflow com questions 55
  • 如何让VLOOKUP在VBA中选择到最低行?

    希望自动在单元格中插入 VLOOKUP 公式 录制宏时 我指示它使用相同的公式填充下面的列 效果很好 但是 当 VLOOKUP 搜索的表发生变化 更多或更少的行 时 就会出现问题 在记录时 VLOOKUP 下降到表中的最后一行 273 但是
  • Office excel将CORS请求作为跨域请求

    我正在尝试从我的 Excel 插件发出跨域请求 正如这里所建议的 http dev office com docs add ins develop addressing same origin policy limitations http
  • 我可以获取VBA代码中的注释文本吗

    可以说我有以下内容 Public Sub Information TEST End Sub 有没有办法得到 TEST 结果 不知何故通过VBA 例如 在 PHP 中 有一个获取注释的好方法 这里有什么想法吗 编辑 应该有办法 因为像 MZ
  • Excel 数字缩写格式

    这是我想要完成的任务 Value Display 1 1 11 11 111 111 1111 1 11k 11111 11 11k 111111 111 11k 1111111 1 11M 11111111 11 11M 11111111
  • 使用 FindElementbyXpath() 获取 Selenium Basic 中可填充框的行和列名称

    我正在使用 Selenium Basic 将电子表格中的文本填充到网站中 网站的html代码是这样的 div table cellspacing 0 border 1 style width 99 tr th style font weig
  • SQL Excel VBA 运行时错误 3709 无效连接

    这是我的第一个问题 欢迎提出建设性的批评 我正在尝试从 Excel VBA 查询 Access 数据库并将返回信息放入 Excel 范围中 我收到此错误 错误消息 运行时错误 3709 连接无法用于 执行此操作 在此情况下它已关闭或无效 语
  • 有没有更快的方法来使用Powershell解析Excel文档?

    我正在与一个接口MS Excel文件通过Powershell 每个 Excel 文档可能有大约 1000 行数据 目前这个脚本似乎读取了Excel文件并以每 0 6 秒 1 条记录的速率将值写入屏幕 乍一看 这似乎非常慢 这是我第一次阅读E
  • 如何在 Excel 中对“高”字符进行 HTML 编码或音译?

    在 Excel 中 如何将包含重音字符 大引号等的单元格内容转换为相同字符的 HTML 或音译纯文本版本 我们有一个 XLS 文档 其中包含一些 高 字符 数据已通过数据库连接提取 并且 Excel 似乎正确处理不同代码页中的各个单元格 或
  • 根据列值突出显示数据框中的行?

    假设我有这样的数据框 col1 col2 col3 col4 0 A A 1 pass 2 1 A A 2 pass 4 2 A A 1 fail 4 3 A A 1 fail 5 4 A A 1 pass 3 5 A A 2 fail 2
  • 在 Excel 中生成随机 -1 和 +1 值

    The Rand 函数会生成一个 0 到 1 之间的实数 这Randbetween 1 1 将生成 1 0 或 1 我想要的只是 1或1 那么 1 到 1 之间的实数呢 Easy IF RAND lt 0 5 1 1 要获得实数 请使用 R
  • 使用 VBScript 在日期字段值上选择错误的数据

    我有一张包含以下数据的表 现在 Excel 共有 36 个任务 每个任务有 4 列 第一个任务 即 Task1 名称将始终从 L 列开始 144 列描述了 36 个任务 现在我们需要按行进行检查 并需要检查 TNStart 开始日期 你们能
  • 如何隐藏/禁用 Highcharts.js 中的图例框?

    我想问是否可以使用 HighCharts js 库隐藏图表中的所有图例框 var chart object chart renderTo render to type graph type colors graph colors title

随机推荐

  • 水平对齐徽标和导航链接

    我一直在尝试将导航部分中的两个 div 以相同的方式对齐 我已经添加了左右浮动 但这不起作用 正如您在图像中看到的那样 它们之间始终存在 2 或 3 个像素间隙 http postimg org image lgtxebtpx http p
  • IOS:init(CGImage) 的使用不明确

    我正在尝试转换CGImage into a CIImage 但是 它不起作用 这行代码 let personciImage CIImage CGImage imageView image CGImage 抛出以下错误 init CGImag
  • 使用 simple_form Rails 时测试 HTML 5 表单验证

    我正在为我的待办事项列表应用程序使用 devise 和 simple form 现在 我的 users edit html erb 有以下代码 h2 Edit profile h2 我的 user rb 看起来像这样 class User
  • 在Java中从控制台打开包中的类

    因此 当我尝试从命令提示符打开一个不在包中的 java 类时 一切正常 但是当我尝试打开一个包中的类时 它会给我 NoClassDefFoundError 错误 当我尝试打开类 java somepackage someclass 时列出包
  • ASPXAUTH Cookie 的安全标志

    我们有一个面向外部的应用程序 由外部安全公司进行了渗透测试 应用程序在 ASP NET MVC4 上开发并在 IIS8 Windows 2012 Server 上运行 报告的漏洞之一是 ASPXAUTH 不安全 当我检查 cookie 检查
  • Python 2.7 中四舍五入到小数点后两位?

    使用Python 2 7如何将我的数字四舍五入到小数点后两位而不是它给出的10位左右 print financial return of outcome 1 str out1 使用内置函数round https docs python or
  • 有没有办法在 NodeJS 中生成受密码保护的 XLSX?

    我正在寻找 npm 包或任何其他解决方法 以便能够生成带有密码的 xlsx 文件 我不想保护工作表或单元格 我希望整个文件受到密码保护 我发现了一些非常好的软件包 excel4node exceljs 但它们都无法满足我的需要 任何建议表示
  • Git 存储库错误并显示消息,它不是存储库...但它是

    我有一个 git repo 去年我一直在同一个盒子上使用 今天我跑步git status并得到错误消息 fatal Not a git repository or any parent up to mount parent home Sto
  • Android上如何动态添加LinearLayout?

    我有一个长度为 n 的数组 现在需要创建 n 个 LinearLayout 并在每个上添加不同的内容 怎样才能动态地完成呢 LinearLayout lLayout new LinearLayout context parentWidget
  • 将表列添加到 Group by 子句 - Ruby on Rails - Postgresql

    我正在尝试使用 Heroku 显然 Postgresql 对于聚合函数来说比 SQL 严格得多 当我推送到 Heroku 时 我收到一条错误消息 内容如下 关于另一个问题 https stackoverflow com questions
  • Sencha Touch Uncaught typeError:未定义不是函数

    我最近开始检查 Sencha Touch 在遵循教程时 我遇到了一些我似乎无法解决的问题 sencha 提供的 app js 中的一些基本代码运行良好 其他人似乎会出错 例如 new Ext application name NotesAp
  • 在最后一个 EditText 处按键盘上的“完成”后隐式“提交”

    我使用过一些应用程序 当我填写用户名 然后转到密码时 如果我在键盘上点击 完成 则会自动提交登录表单 而无需单击提交按钮 这是怎么做到的 尝试这个 在您的布局中放置 编辑以下内容
  • 在 Python 中绘制 3d 数组最有效的方法是什么?

    在 Python 中绘制 3d 数组最有效的方法是什么 例如 volume np random rand 512 512 512 其中数组项表示每个像素的灰度颜色 下面的代码运行速度太慢 import matplotlib as mpl f
  • Invoke-WebRequest SSL 失败?

    当我尝试使用时Invoke WebRequest我收到一些奇怪的错误 Invoke WebRequest Uri https idp safenames com Invoke WebRequest The underlying connec
  • B2C 公司品牌并不适用于所有政策

    我上传了一个sign in page background image但这仅适用于我的Edit Policy 它不应该适用于所有政策 吗 适用于编辑策略 不执行我的注册政策 假设我没有分配自定义页面 URI 只有登录策略和个人资料编辑策略的
  • 在 Plone 上使用 Dexterity 按文件类型或 mimetype 限制上传

    我有一个灵活构建的自定义内容类型 在架构中 架构如下所列 我使用 plone namedfile field NamedFile 用于附件 上传 我想限制上传 以便只有 mp3 文件可以附加到我的内容类型 实现这一目标的最佳方法是什么 这是
  • 使用 SASS(从命令行)和 Autoprefixer(对于 Bootstrap 4.x)

    我最近开始使用scss文件 尤其是自定义文件引导程序 为了编译我的 scss 文件 以及引导程序 我使用sass https sass lang com 从命令行 例子 sass path to scss bootstrap mycusto
  • 防止具有无效 Authenticode 签名的可执行文件运行

    我们在单个可执行文件中发布了软件包的更新补丁 该文件使用颁发给我们的证书使用 Authenticode 数字签名进行签名 该文件被下载到我们的客户操作的 Windows XP 或 Vista 系统中 他们在其中运行该文件以更新我们的软件 我
  • 使用 GcmListenerService 的多个 GCM 侦听器

    Google 建议使用 GcmListenerService 代替 GcmBroadcastReceiver 我正在制作一个使用 GCM 的库项目 com android library 插件 当应用程序项目 com android app
  • 如何自动将图表从 Excel(或 Calc)导出为 PNG

    问题 我正在开发一个 Web 应用程序 它将数据从数据库导出到 Excel 包括图表 这首先是导出的主要原因 现在我希望图表在网页上也可见 而不需要导出数据并打开下载的 Excel 文件 这当然可以使用 JS 库来完成 但是由于图表相当复杂