열의 텍스트가 길 때 열을 자동 너비로 만드는 방법은 무엇입니까?
이 코드를 사용합니다
Worksheet.Column(colIndex).AutoFitColumn() 'on all columns'
Worksheet.cells.AutoFitColumns()
Worksheet.Column(colIndex).BestFit = True 'on all columns'
이 방법들 중 어느 것도 작동하지 않습니다
작동시키는 방법이 있습니까?
참고 : 일부 텍스트는 유니 코드를 사용합니다.
답변
사용 AutoFitColumns
하지만 셀을 지정해야합니다. 전체 워크 시트를 가정합니다.
VB.NET
Worksheet.Cells(Worksheet.Dimension.Address).AutoFitColumns()
씨#
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();
}
답변
범위를 지정하지 않고 셀을 맞출 수 있다는 것을 지적하고 싶었습니다. 모든 열 등을 형식화 한 후에 이것을 호출하십시오.
worksheet.Cells.AutoFitColumns()
답변
나는 조금 늦었다는 것을 알고 있지만 오늘도 같은 문제가있었습니다. worksheet.DefaultColWidth
정의 된 경우 작동하지 않습니다. 해당 줄을 제거하고 추가 Worksheet.cells.AutoFitColumns();
했으며 이제 작동합니다.
답변
그것은 나를 위해 잘 작동합니다.
시험:
ExcelWorksheet wsSheet1 = ExcelPkg.Workbook.Worksheets.Add("Sheet1");
wsSheet1.Cells[wsSheet1.Dimension.Address].AutoFitColumns();
ExcelPkg.SaveAs();
답변
worksheet.Column(1).AutoFit(0);
AutoFit () 을 사용 하여 트릭을 수행하지 않았습니다.