我正在使用C#处理Excel对象。我想自动调整列宽,但是要这样:我希望列的宽度比AutoFit方法设置的宽度多5个。
如何在使用AutoFit()后获取列宽?
如何使列的宽度比自动调整后的宽度大5个?
如果你想使用Selection对象并启用早期绑定的智能感知,你需要先将Selection对象转换为Range对象:
Excel.Range selectedRange = (Excel.Range)myExcelApp.Selection;
selectedRange.Columns.AutoFit();
foreach (Excel.Range column in selectedRange.Columns)
{
column.ColumnWidth = (double)column.ColumnWidth + 5;
}
-- 麦克
Selection.Columns.Autofit
Selection.Columns(1).ColumnWidth = Selection.Columns(1).ColumnWidth + 5
var row = 1;
ws.Column(1).AutoFit(ws.Cells[row, 1].Text.Length + 5);
其中ws是您的工作表:
var pck = new ExcelPackage();
var ws = pck.Workbook.Worksheets.Add("Plan1")
试试这样写:
ExcelWorksheet ws = pck.Workbook.Worksheets.Add("Sheet1");
//Load the datatable into the sheet, starting from cell A1. Print the column names on row 1
ws.Cells["A1"].LoadFromDataTable(data_table, true);
//Set full Sheet Auto Fit
ws.Cells[1, 1, data_table.Rows.Count, data_table.Columns.Count].AutoFitColumns();