从 Excel 导出图表
Posted
技术标签:
【中文标题】从 Excel 导出图表【英文标题】:Exporting Charts from Excel 【发布时间】:2022-01-17 06:07:42 【问题描述】:我正在使用 Import-Excel(BTW 很棒的模块)创建一个包含 1 个图表的 Excel 电子表格。但是,我想将此图表导出为 .png 文件。有很多使用 MS ComObject 的示例,但我在 Mac 上运行并且 Com 对象不存在。 我已经能够在我的 powershell 脚本中做到这一点。
$package = Export-Excel -InputObject $data -Path $filename -TableName Xyz -ExcelChartDefinition $c -AutoNameRange -PassThru
Write-Host "Package is " $package.ToString()
$wb = $package.Workbook
Write-Host "Workbook is " $wb.ToString()
foreach ($ws in $wb.Worksheets)
Write-Host "Worksheet is " $ws.ToString()
foreach ($excelchart in $ws.Drawings)
Write-Host "Chart is " $excelchart.ToString()
输出如下:
Package is OfficeOpenXml.ExcelPackage
Workbook is OfficeOpenXml.ExcelWorkbook
Worksheet is Sheet1
Chart is OfficeOpenXml.Drawing.Chart.ExcelBarChart
现在,我想知道如何将其保存为 .png 文件。
【问题讨论】:
【参考方案1】:查看https://github.com/dfinke/ImportExcel/blob/master/Export-charts.ps1
这是一个示例,因此您的里程可能会有所不同。如果您对此有任何疑问,请将其发布在 GitHub 存储库上,我可以跟踪它。
【讨论】:
我相信这个例子再次使用了 Com 对象。它不适用于 Mac。 我不知道没有 COM 的方法,图表仅在工作表打开时呈现以上是关于从 Excel 导出图表的主要内容,如果未能解决你的问题,请参考以下文章
NPOI将DataGridView中的数据导出+导出Chart图表图片至Excel