2011-03-28 2 views
10

저는 Apache POI 라이브러리의 초보자입니다. VBA에서Apache POI로 전체 워크 시트를 선택하고 굵게 만드는 방법

, 내가 선택할 수 있습니다 알고 코드를 다음과 굵은 전체 워크 시트

Dim ws As Worksheet 
Set ws = ThisWorkbook.Sheets(1) 
ws.Cells.Font.Bold = True 

내가 선택하는 방법을 알 수 있으며, 아파치 POI 라이브러리와 코딩에 의한 굵은 전체 시트?

감사

답변

13

link에 꽤 좋은 예입니다.

Sheet sheet = wb.createSheet("test"); 
CellStyle cs = wb.createCellStyle(); 
Font f = wb.createFont(); 
f.setBoldweight(Font.BOLDWEIGHT_BOLD); 
cs.setFont(f); 
sheet.setDefaultColumnStyle(1,cs); //set bold for column 1 
+1

그래, 그것은 글꼴 무게를 설정하는 방법을 언급했지만 어떻게 전체 시트를 선택합니까? – mememoremore

+1

아는 한, 각 열에 대해이 작업을 수행해야합니다. 나는 틀릴 수 있었다. – CoolBeans

+2

몇 가지 더 많은 검색을 한 후에 동의합니다. 셀에만 적용 할 수있는 것만 큼 (열은 앞으로 추가 될 새로운 셀에 적용되는 기본 스타일 만 설정할 수 있습니다). – mememoremore

1
private HSSFFont createAndSetFontStyle(HSSFWorkbook wb) { 
    HSSFFont font = wb.createFont(); 
    font.setFontName(XSSFFont.DEFAULT_FONT_NAME); 
    font.setBoldweight(XSSFFont.BOLDWEIGHT_BOLD); 
    font.setFontHeightInPoints((short)10); 
    return font; 
} 


    HSSFCellStyle cellStyle = workBook.createCellStyle(); 
    HSSFFont createfont = createAndSetFontStyle(workBook); 
    cellStyle.setFont(createfont); 

    cell.setCellStyle(cellStyle); 
+1

'XSSFFont'와'HSSFFont'를 조심해야합니다. –

6

통합 문서의 기본 글꼴이 그래서 통합 문서의 글꼴 굵게 설정 기본값을 수정하는 인덱스 0에서 검색 할 수 있습니다 :

private void setWorkbookDefaultFontToBold(Workbook workbook){ 
    Font defaultFont = workbook.getFontAt(0); 
    defaultFont.setBoldweight(Font.BOLDWEIGHT_BOLD); 
} 

그것은 정보의 정말 모호한 조각입니다 - POI에있다 Sheet Javadoc for setColumnWidth, 두 번째 줄 정도 :

"...이 셀에 표시 될 수 있습니다. s는 표준 글꼴 (통합 문서의 첫 번째 글꼴)으로 서식을 지정합니다. "

나는 많이 사용했다하지 않은, 그래서이 날 (위치과에 문서의 비 유병률이에 따라 추천의 날 약간 레리한다) 그러나 그것은 어딘가에 위해 일할 일어날 수 있습니다 당신은 시작할 수 있었다

관련 문제