2012-05-15 3 views
4

나는 cfspreadsheet을 사용하여 ColdFusion을 사용하여 Excel 스프레드 시트를 생성합니다. 머리글 행을 삽입 한 다음 spreadsheetAddRows을 사용하여 시트에 쿼리를 덤프하십시오. 문제는 열이 충분히 넓지 않다는 것입니다. 각 열을 개별적으로 조정하려면 SpreadsheetSetColumnWidth을 사용할 수 있지만 전체 시트에 자동 너비를 적용 할 수있는 방법이 있습니까? 각 열의 최대 너비를 알지 못하므로 각 열에 개별적으로 적용하고 싶지 않습니다. Excel에는 열의 자동 너비 기능이 있습니다. — ColdFusion 코드에서 트리거하는 방법이 있습니까? (또는 더 좋게 : 자동 너비 —에 각 열을 최대 너비 + 2 또는 그 이상으로 설정할 수 있습니까?)Excel 열의 너비를 개별적으로 설정하지 않고 조정할 수 있습니까?

답변

4

마지막으로 문서화 된 CF 기능이 없는지 확인했습니다. 그러나 POI의 autoSizeColumn(columnIndex) 메소드를 사용하여 각 열의 크기를 자동으로 조정할 수 있습니다. POI는 시트 및 열 인덱스에 대해 0을 사용합니다.

<cfscript> 
    // create a workbook and add a long value 
    wb = SpreadSheetNew(); 
    spreadSheetSetCellValue(wb, repeatString("x", 200), 1, 1); 
    // get the first sheet 
    sheet = wb.getWorkBook().getSheetAt(javacast("int", 0)); 
    // resize first column ie "A" 
    sheet.autoSizeColumn(javacast("int", 0)); 
    spreadSheetWrite(wb, "c:/test.xls", true); 
</cfscript> 
관련 문제