我可以在开放的XML SDK生成的电子表格上设置自动宽度,而无需计算单个宽度吗?

StackOverflow https://stackoverflow.com/questions/2760168

我正在努力使用Open XML SDK从大量数据创建Excel文件。我终于设法获得了一个功能列节点,该节点指定了将在文件中实际使用的所有列。有一个“ BestFit”属性可以设置为True,但这显然没有做任何事情。是否有一种方法可以自动将这些列设置为“最佳拟合”,以便当有人打开此文件时,它们已经达到正确的金额?还是我被迫计算每列应提前的宽度,并将其设置在代码中?

有帮助吗?

解决方案

我理解规格的方式和 此MSDN讨论, BestFit 告诉您在Excel中自动计算的宽度,但它并未告诉Excel下次打开时应该再次对其进行计算。

正如“ Goodol”在该讨论中指示的那样,我认为只有在显示列时才能计算宽度,因为它取决于内容,使用的字体,其他样式参数...因此,即使您想预先计算宽度自己,请注意,这只是一个估计,如果内容包含很多“宽”字符,那可能是错误的。还是开放的XML SDK为您做到这一点?

其他提示

我正在使用 epplus 我强烈推荐。花了我一段时间来弄清楚如何使用它,这就是我想到的:

// Get your worksheet in "sheet" variable

// Set columns to auto-fit
for (int i = 1; i <= sheet.Dimension.Columns; i++)
{
    sheet.Column(i).AutoFit();
}
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top