web-dev-qa-db-ja.com

ApachePOIを使用したExcelドロップダウンリスト

ApachePOIを使用してExcelファイルにドロップダウンリストを作成する必要があります。私はそうすることができますが、ドロップダウンリストの最初のアイテムをデフォルトのアイテムとして作成することはできません。

public class sd {

/**
 * @param args
 * @throws IOException 
 */
public static void main(String[] args) throws IOException {

DataValidation dataValidation = null;
DataValidationConstraint constraint = null;
DataValidationHelper validationHelper = null;

 XSSFWorkbook wb = new XSSFWorkbook();
 XSSFSheet sheet1=(XSSFSheet) wb.createSheet("sheet1");


    validationHelper=new XSSFDataValidationHelper(sheet1);
    CellRangeAddressList addressList = new  CellRangeAddressList(0,5,0,0);
    constraint =validationHelper.createExplicitListConstraint(new String[]{"SELECT","10", "20", "30"});
    dataValidation = validationHelper.createValidation(constraint, addressList);
    dataValidation.setSuppressDropDownArrow(true);      
    sheet1.addValidationData(dataValidation);

    FileOutputStream fileOut = new FileOutputStream("c:\\temp\\vineet.xlsx");
    wb.write(fileOut);
    fileOut.close();
}

}
17
Vineet

デフォルト値を設定するには、setCellValue( "first_item_value");だけです。

sheet.getRow(1).getCell(index).setCellValue("my_default_value");

私は同じ問題に直面しているようにそれをしました。

7
meadlai

これが私のコードです:

Cell cell = row.createCell(2);
cell.setCellValue("SELECT");

//2 is the 2nd cell in my case
1
user9962613