EPPlus中的自动列宽

当列中的文本很长时如何使列成为自动宽度?

我使用这个代码

 Worksheet.Column(colIndex).AutoFitColumn() 'on all columns'
 Worksheet.cells.AutoFitColumns()
 Worksheet.Column(colIndex).BestFit = True  'on all columns'

这些方法都没有工作

有什么方法可以使它工作吗?

注意:我的一些文本使用Unicode。


使用AutoFitColumns ,但你必须指定单元格,我假设整个工作表:

VB.NET

Worksheet.Cells(Worksheet.Dimension.Address).AutoFitColumns()

C#

Worksheet.Cells[Worksheet.Dimension.Address].AutoFitColumns();

请注意,填写工作表后,您需要调用此方法。


我已经使用了EPPlus 3.1.3.0版本的代码,它正在工作:

worksheet.Column(1).AutoFit();

工作表是引用我在代码中创建的工作表的变量(不是具有静态方法的类!)。

很明显,您必须在填充列后调用此方法


我知道这是一个老问题,但我使用下面的代码,它似乎直接解决您试图做的事情。

using (var xls = new ExcelPackage())
{
    var ws = xls.Workbook.Worksheets.Add("Some Name");

    //**Add Column Names to worksheet!**
    //**Add data to worksheet!**

    const double minWidth = 0.00;
    const double maxWidth = 50.00;

    ws.Cells.AutoFitColumns(minWidth, maxWidth);

    return pkg.GetAsByteArray();
}
链接地址: http://www.djcxy.com/p/72025.html

上一篇: Auto column width in EPPlus

下一篇: Remove picture in EPPlus