Excel使用Apache POI下拉列表

时间:2012-05-10 12:33:12

标签: excel apache-poi xssf

我需要使用Apache POI在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();
}

}

2 个答案:

答案 0 :(得分:7)

设置默认值,只需setCellValue(“first_item_value”);

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

我在面对同样的问题时做到了。

答案 1 :(得分:0)

这是我的代码:

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

//2 is the 2nd cell in my case