原来显示百分比的数据,被修改为了小数点,这应该是个bug,预期应该不修改已有格式,示例文件见附件。
图表数据格式对比.zip (775.7 KB)
public static void outputpdf()
{
Workbook workbook = new Workbook("D:\\图表数据格式变化.xlsm");
workbook.Save("D:\\图表数据格式变化_output.xlsm");
}
原来显示百分比的数据,被修改为了小数点,这应该是个bug,预期应该不修改已有格式,示例文件见附件。
图表数据格式对比.zip (775.7 KB)
public static void outputpdf()
{
Workbook workbook = new Workbook("D:\\图表数据格式变化.xlsm");
workbook.Save("D:\\图表数据格式变化_output.xlsm");
}
概要
在仅执行 Workbook workbook = new Workbook(...); workbook.Save(...); 的情况下,部分用户发现 Excel 工作簿中的图表数据标签原本使用的百分比格式在保存后变成了小数形式。下面提供几种排查和处理思路。
排查步骤
Console.WriteLine(Workbook.Version); // 记录返回的版本号
将使用的版本号记录下来,便于后续沟通。
using Aspose.Cells;
var wb = new Workbook(@"D:\图表数据格式变化.xlsm");
wb.Save(@"D:\图表数据格式变化_output.xlsm");
var sheet = wb.Worksheets[0];
var chart = sheet.Charts[0]; // 假设只有一个图表
var series = chart.NSeries[0]; // 第一个系列
// 设置数据标签的显示格式为百分比
series.DataLabels.NumberFormat = "0%"; // 如属性不存在,请查阅文档获取正确写法
var wbReload = new Workbook(@"D:\图表数据格式变化_output.xlsm");
var chartReload = wbReload.Worksheets[0].Charts[0];
chartReload.NSeries[0].DataLabels.NumberFormat = "0%";
wbReload.Save(@"D:\图表数据格式变化_fixed.xlsm");
后续处理
行动清单
NumberFormat 以确保保存后显示为百分比。@lingtian
通过使用样例代码和文件在最新版本v25.11上进行测试,我们可以复现问题。在重新保存样例文件后,图表数据格式发生改变。
我们已经在内部问题跟踪系统中打开了以下新问题单,并将根据Free Support Policies中提到的条款提供修复。
问题单号:CELLSNET-59474