Tengo un requisito que me falta agregar validación de datos a una columna completa en lugar de una celda específica. Fui a través de la documentación de Apache poi y encontrado el siguiente ejemplo
HSSFWorkbook workbook = new HSSFWorkbook();
HSSFSheet sheet = workbook.createSheet("Data Validation");
CellRangeAddressList addressList = new CellRangeAddressList(0, 0, 0, 0);
DVConstraint dvConstraint = DVConstraint.createExplicitListConstraint(
new String[]{"10", "20", "30"});
DataValidation dataValidation = new HSSFDataValidation
(addressList, dvConstraint);
dataValidation.setSuppressDropDownArrow(false);
sheet.addValidationData(dataValidation);
Pero el ejemplo anterior crea un desplegable datavalidation para una celda en particular. En este caso la fila 0, columna 0. El resto de las celdas de una columna no tiene validación. Pero en el real archivo de excel podemos hacerlo por lo que debería ser posible. He intentado y buscado mucho pero no pudieron llegar a una solución. Por favor ayuda..
- ¿Qué sucede si se establece un rango de celdas que va desde la fila 0 de la fila (mucho)?
- si se hace a un buen montón de números de fila, a continuación, se aplicará la validación de datos para todos los mencionados filas, pero después de eso, no
Chetan todos los cuatro parámetros del constructor CellRangeAddressList de la siguiente
así por ejemplo. si hay 10 filas y 5 columnas, y si desea agregar en la lista desplegable en la 2ª columna en todo el todas las filas que significa en la totalidad de la 2ª columna, a continuación, utilizar a continuación el código de dirección de celda
basado en el código de esto agregará un desplegable con los valores 10,20,30 en toda la 2ª columna si usted agregue la línea de código anterior mediante la sustitución de su código.
espero que esto será claro el concepto y se obtendrá el deseo resultado.
Otra manera de obtener la validación en el conjunto de la columna también puede utilizar -1 por tanto fila de parámetros como:
Prueba esta en PDI 3.16