domingo, 10 de julio de 2011

Creando Excels

¿Alguna vez has necesitado crear una hoja de cálculo a partir de varias hojas? Puede que este programa te ayude. Se trata de una aplicación Java (y por tanto multiplataforma) que he desarrollado a partir del uso de la librería Apache POI para generar un fichero Excel a partir de los libros contenidos en una lista de Excels (de tamaño variable):




Por defecto, copia la primera hoja aunque puede ser especificado el nombre de la hoja a copiar. El orden es significativo ya que define la posición en el que se copiarán en la hoja destino. Opcionalmente, se puede copiar el estilo de la hoja (aunque es una opción que funciona regular, está en beta). Si el fichero Excel destino existe, las hojas se añaden a las que existieran previamente. La copia se hace completa, respetando el tipo de cada celda origen, por lo que se mantienen las fórmulas y demás características. La forma de uso es la siguiente (in English):

# java -jar mergeExcel.jar
Program for merging several Excel (97-2003) files into one:

Usage: java -jar mergeExcel.jar [-style] -output output.xls -input input1.xls[:sheet_name1][;input2.xls[:sheet_name2];...]

-style: If present, cell style is copied. This parameter is optional (and beta).
-output: Output Excel file. If output file exists, it adds sheets to existing ones. This parameter is mandatory.
-input: List of input files for merging. Excel files must be separated by ';'. Optionally, sheet label can be specified adding ':' at the end of Excel file name. If no sheet name is specified, first one will be taken. No spaces or special characters are allowed. All final merge sheets (including those in output file, if exists) must have different labels. Otherwise, it could not be merged. This parameter is mandatory.

Copyleft - Javier Sianes

Un ejemplo de uso seria el siguiente:



Con esta llamada se ha creado un fichero Excel de nombre merge.xls que une la primera hoja del fichero C41185CCPR-06-2011.xls y la hoja de nombre C41186POPR del fichero C41186POPR-06-2011.xls. El resultado es el siguiente:




Espero os sea de utilidad. El aplicativo es completamente libre y puede descargarse del siguiente enlace.