PHPExcel Documentación para desarrolladores

Author: Version: Date:

Maarten Balliauw 1.7.4 27 April 2011

1.

Contents

1. CONTENTS........................................................................................................................................................2 2. REQUISITOS PREVIOS..................................................................................................................................5 PUEDE ELIMINAR ESTA DEPENDENCIA PARA ESCRIBIR EXCEL2007 ARCHIVOS (NO PARA LEER) MEDIANTE EL USO DE LA PCLZIP QUE SE INCLUYE CON PHPEXCEL. SEE THE FAQ SECTION OF THIS DOCUMENT ( 2.4.2 ) FOR DETAILS ABOUT THIS. VEA LA SECCIÓN DE PREGUNTAS FRECUENTES DE ESTE DOCUMENTO ( 2.4.2 ) PARA MÁS DETALLES SOBRE ESTO. PCLZIP DOES HAVE A DEPENDENCY ON PHP’S ZLIB EXTENSION BEING ENABLED. PCLZIP TIENE UNA DEPENDENCIA EN ZLIB EXTENSIÓN PHP ESTÁ HABILITANDO.............................................................................................................................5 2.1. LAS INSTRUCCIONES DE INSTALACIÓN.....................................................................................................................5 2.2. PRIMEROS PASOS.................................................................................................................................................5 2.3. ENLACES ÚTILES Y HERRAMIENTAS.........................................................................................................................6 2.3.1. OpenXML / SpreadsheetML....................................................................................................................6 2.3.2. Preguntas más frecuentes.......................................................................................................................6 2.3.3. Tutoriales................................................................................................................................................9
BIBLIOTECA

3. ARQUITECTURA...........................................................................................................................................10 3.1. ESQUEMÁTICA..................................................................................................................................................10 3.2. LAZY LOADER..................................................................................................................................................10 3.3. SPREADSHEET(HOJA DE CALCULO) EN MEMORIA...................................................................................................10 3.4. ESCRITURA Y LECTURA......................................................................................................................................11 3.5. FLUIDO INTERFACES...........................................................................................................................................12 4. CREACIÓN DE UNA SPREADSHEET(HOJA DE CALCULO)..............................................................14 4.1. LA CLASE PHPEXCEL.......................................................................................................................................14 4.2. OPCIONES DE CONFIGURACIÓN.............................................................................................................................14 4.2.1. El almacenamiento en caché de una celda...........................................................................................14 4.2.2. Idioma / Configuración regional..........................................................................................................16 4.3. ELIMINACIÓN DE UN LIBRO DE LA MEMORIA..........................................................................................................17 4.4. WORKSHEETS...................................................................................................................................................17 4.5. ACCESSING CELLS.............................................................................................................................................17 4.5.1. El establecimiento de un valor de la celda por coordenada................................................................17 4.5.2. Recuperación de una celda de coordenadas........................................................................................17 4.5.3. El establecimiento de un valor de celda de la columna y la fila..........................................................17 4.5.4. Recuperación de una celda por columna y fila....................................................................................18 4.5.5. Looping celdas......................................................................................................................................18 4.5.6. Uso de carpetas valor para facilitar la entrada de datos.....................................................................19 4.6. PHPEXCEL RECETAS.........................................................................................................................................20 4.6.1. Marco de hoja de cálculo de los metadatos de un................................................................................20 4.6.2. Marco activa de hoja de una hoja de cálculo.......................................................................................21 4.6.3. Escribe una fecha en una celda............................................................................................................21 4.6.4. Escribir una fórmula en una celda.......................................................................................................22 4.6.5. Configuración regional para los preparados en..................................................................................22 4.6.6. Escriba un carácter de nueva línea "\ n" en una celda (Alt + Enter)..................................................23 4.6.7. Establezca explícitamente tipo de datos de una celda..........................................................................24 4.6.8. Cambiar una celda en una dirección URL hacer clic en......................................................................24 4.6.9. Marco orientación de la página una hoja de cálculo y el tamaño.......................................................24 4.6.10. Configurar página: Escala de opciones.............................................................................................24 4.6.11. Página de márgenes............................................................................................................................25 4.6.12. Centro de una página horizontal / vertical.........................................................................................26 4.6.13. Ajuste de la cabecera y pie de página de impresión de una hoja de cálculo.....................................26 4.6.14. Marco rompe la impresión en una fila o columna..............................................................................28 4.6.15. Mostrar u ocultar líneas de división de impresión cuando................................................................28 4.6.16. Marco filas / columnas a repetir en la parte superior / izquierda......................................................29 4.6.17. Especificar el área de impresión........................................................................................................29 4.6.18. Formato de celdas...............................................................................................................................29 4.6.19. Número de formatos............................................................................................................................30 4.6.20. Alineación y ajustar el texto...............................................................................................................31

PHPExcel Developer Documentation

2

4.6.21. Configuración del estilo predeterminado de un libro.........................................................................32 4.6.22. Estilo bordes de la celda.....................................................................................................................32 4.6.23. Formato condicional en una celda.....................................................................................................33 4.6.24. Añade un comentario a una celda......................................................................................................34 4.6.25. Aplicar autofiltro a un rango de celdas..............................................................................................34 4.6.26. Definición de la seguridad en una hoja de cálculo............................................................................34 4.6.27. Marco de validación de datos en una celda.......................................................................................35 4.6.28. Marco columna del ancho de una.......................................................................................................36 4.6.29. Mostrar u ocultar una columna..........................................................................................................37 4.6.30. Grupo / esquema de una columna......................................................................................................37 4.6.31. Marco fila la altura de un...................................................................................................................37 4.6.32. Mostrar u ocultar una fila...................................................................................................................37 4.6.33. Grupo / esbozar una fila.....................................................................................................................37 4.6.34. Combinar / unmerge celdas................................................................................................................38 4.6.35. Inserción de filas / columnas..............................................................................................................38 4.6.36. Agregar un dibujo a una hoja de cálculo...........................................................................................38 4.6.37. Añadir texto enriquecido a una celda.................................................................................................39 4.6.38. Definir un rango con nombre.............................................................................................................39 4.6.39. Redirigir la salida a la web del navegador de un cliente...................................................................40 4.6.40. Ajuste del ancho de columna predeterminado....................................................................................41 4.6.41. Ajuste de la altura de la fila por defecto.............................................................................................41 4.6.42. Agregar un dibujo a una hoja de GD.................................................................................................41 4.6.43. Marco hoja de cálculo el nivel de zoom.............................................................................................41 4.6.44. Hoja de color de ficha.........................................................................................................................42 4.6.45. Crear hojas de cálculo en un libro.....................................................................................................42 4.6.46. Ocultos hojas de cálculo (hoja de estados)........................................................................................42 4.6.47. A izquierda hoja de Derecho..............................................................................................................42 5. REALIZACIÓN DE CÁLCULOS DE LA FÓRMULA...............................................................................43 5.1. USANDO EL MOTOR DE CÁLCULO PHPEXCEL........................................................................................................43 5.2. LIMITACIONES CONOCIDAS..................................................................................................................................44 5.2.1. Precedencia de Operadores..................................................................................................................44 5.2.2. Las fórmulas que se usan números y texto............................................................................................44 6. LECTURA Y ESCRITURA DE ARCHIVOS...............................................................................................45 6.1. PHPEXCEL_IOFACTORY..................................................................................................................................45 6.1.1. Crear PHPExcel_Reader_IReader utilizando PHPExcel_IOFactory.................................................45 6.1.2. Crear PHPExcel_Writer_IWriter utilizando PHPExcel_IOFactory....................................................46 6.2. EXCEL 2007 (SPREADSHEETML) FORMATO DE ARCHIVO.......................................................................................46 6.2.1. PHPExcel_Reader_Excel2007.............................................................................................................46 6.2.2. PHPExcel_Writer_Excel2007...............................................................................................................47 6.3. EXCEL 5 (BIFF) FORMATO DE ARCHIVO..............................................................................................................47 6.3.1. PHPExcel_Reader_Excel5...................................................................................................................48 6.3.2. PHPExcel_Writer_Excel5.....................................................................................................................49 6.4. EXCEL 2003 FORMATO DE ARCHIVO XML.........................................................................................................49 6.4.1. PHPExcel_Reader_Excel2003XML.....................................................................................................49 6.5. ENLACE SIMBÓLICO (SYLK).............................................................................................................................50 6.5.1. PHPExcel_Reader_SYLK.....................................................................................................................50 6.6. CSV (VALORES SEPARADOS POR COMAS).............................................................................................................50 6.6.1. PHPExcel_Reader_CSV.......................................................................................................................51 6.6.2. PHPExcel_Writer_CSV .......................................................................................................................52 6.7. HTML...........................................................................................................................................................53 6.7.1. PHPExcel_Writer_HTML ....................................................................................................................53 6.8. PDF...............................................................................................................................................................55 6.8.1. PHPExcel_Writer_PDF .......................................................................................................................55 6.9. GENERACIÓN DE ARCHIVOS DE EXCEL A PARTIR DE PLANTILLAS (LEER, MODIFICAR Y ESCRIBIR)....................................56 7. CRÉDITOS.......................................................................................................................................................57 APPENDIX A: CLAVES VÁLIDAS DE MATRIZ DE APPLYFROMARRAY PARA ESTILO () ..........58

PHPExcel Developer Documentation

3

PHPExcel Developer Documentation

4

2.

Requisitos previos

Requisitos de software
El siguiente software es necesario para desarrollar con PHPExcel: • • • • PHP version 5.2.0 or newer PHP versión 5.2.0 o posterior PHP extension php_zip enabled *) extensión php_zip habilitadas con PHP *) PHP extension php_xml enabled PHP php_xml extensión habilitado PHP extension php_gd2 enabled (if not compiled in) extensión de PHP php_gd2 habilitado (si no se compilan en)

*) Php_zip sólo es necesario por PHPExcel_Reader_Excel2007, PHPExcel_Writer_Excel2007 y PHPExcel_Reader_OOCalc. In other words, if you need PHPExcel to handle .xlsx or .ods files you will need the zip extension, but otherwise not. En otras palabras, si usted necesita PHPExcel de manejar. Xlsx o archivos. Ods tendrá la extensión zip, pero no lo contrario. Puede eliminar esta dependencia para escribir excel2007 archivos (no para leer) mediante el uso de la biblioteca PCLZip que se incluye con PHPExcel. See the FAQ section of this document ( 2.4.2 ) for details about this. Vea la sección de preguntas frecuentes de este documento ( 2.4.2 ) para más detalles sobre esto. PCLZip does have a dependency on PHP’s zlib extension being enabled. PCLZip tiene una dependencia en zlib extensión PHP está habilitando.

2.1.

Las instrucciones de instalación

La instalación es muy fácil: copiar el contenido de la carpeta de las clases a cualquier lugar in your application required. en su aplicación requiere.

Ejemplo: Si su directorio web raíz es / var / www / es posible que desee crear una subcarpeta llamada / var / www / clases / y copiar los archivos en esa carpeta por lo que terminan con los archivos:

/var/www/Classes/PHPExcel.php /var/www/Classes/PHPExcel/Calculation.php /var/www/Classes/PHPExcel/Cell.php ...

2.2.

Primeros pasos

Una buena manera de empezar es ejecutar algunas de las pruebas incluidas en la descarga.
Copie el "Pruebas" carpeta al lado de su "Clases" carpeta desde arriba por lo que terminan con:

/var/www/Tests/01simple.php /var/www/Tests/02types.php ...

PHPExcel Developer Documentation

5

7. Please refer to the PHPExcel CodePlex pages for an update version of the list below.aspx http://openxmldeveloper..7.PHP complains about ZipArchive not being found PHP se queja de que no se encuentran ZipArchive PHP se queja de que no se encuentran ZipArchive Asegúrese de que cumple todos los requisitos. Parece que hay un problema con la codificación de caracteres .codeplex. señalando su navegador para que los scripts de prueba: http://example.3. Enlaces útiles y herramientas Hay algunos enlaces y herramientas que son muy útiles cuando se desarrolla utilizando PHPExcel. If the script uses different encoding then it is possible to convert the texts with PHP's iconv() function.codeplex.6 the PCLZip library has been bundled with PHPExcel as an alternative to the ZipArchive class.php . Preguntas más frecuentes El FAQ más páginas para PHPExcel se puede encontrar en http://www.com/downloads/details. entonces es posible convertir los textos con los iconv () de PHP.org/news/TC45_current_work/TC45_available_docs.ecma-international.php http://example.org/articles/1970.microsoft.htm http://www.htm  OpenXML Explained e-book OpenXML Explicación de e-libro http://openxmldeveloper.com/downloads/details. Desde la versión 1. Since version 1. Por favor.6 de la biblioteca PCLZip ha sido incluido con PHPExcel como una alternativa a la clase ZipArchive.aspx  Microsoft Office Compatibility Pack for Word. Es necesario el uso de codificación UTF-8 para todos los textos en PHPExcel.com/PHPExcel/Wiki/View.Empiece a correr las pruebas.codeplex. Excel.1.com/PackageExplorer/ http://www. Nota: Puede ser necesario modificar el incluir o requerir declaraciones al comienzo de cada uno de los scripts de prueba si su "Clases" carpeta de arriba se llama de otra manera.org/news/TC45_current_work/TC45_available_docs.3.com/Tests/02types.ecma-international. Esto se puede activar llamando al: PHPExcel Developer Documentation 6 .2.com/PackageExplorer/ 2.3.aspx? familyid=941b3470-3ae9-4aee-8f43-c6bb74cd1466&displaylang=en  OpenXML Package Explorer OpenXML Explorador de paquetes http://www. especialmente la extensión php_zip debe estar habilitado.aspx?title=FAQ&referringTitle=Requirements .org/articles/1970. Si la secuencia de comandos utiliza la codificación diferentes.microsoft. OpenXML / SpreadsheetML  Archivo de documentación en formato http://www.. consulte la página de CodePlex PHPExcel para una versión de actualización de la lista a continuación.com/Tests/01simple..aspx?familyid=941b3470-3ae9-4aee-8f43c6bb74cd1466&displaylang=en http://www. La clase ZipArchive sólo es necesario cuando la lectura o la escritura que utilizan formatos de compresión Zip (excel2007 y OOCalc). 2.. and PowerPoint 2007 File Formats Paquete de compatibilidad de Microsoft Office para Word. Excel y PowerPoint 2007 Formatos de archivo http://www. 2.

La memoria disponible para PHP puede ser aumentada mediante la modificación del valor de la directiva memoryLimit en su archivo php. click Yes. haga clic en Sí ". Error fatal: tamaño de la memoria domésticos de xxx bytes agotado (tratado de asignar bytes yyy) en zzz aaa en línea PHPExcel tiene una "memoria" representación de una hoja de cálculo. '128M ') dentro de su código (ISP lo permite). así: PHPExcel Developer Documentation 7 . . sobre las diferentes versiones de PHPExcel. asegúrese de activar la seguridad de hoja de cálculo. Si no puede encontrar una copia limpia de ZipArchive. La versión que se puede encontrar en http://snaps. y que también utilizan diferentes cantidades de memoria. The version that can be found on http://snaps. entonces esta discusión en el foro se describen algunos de los métodos que se pueden aplicar para reducir el uso de la memoria de las secuencias de comandos utilizando PHPExcel. en el foro de debate . amplia protección de las células.). por ejemplo. por lo que es susceptible de limitaciones de memoria de PHP. This can for example be done like this: Esto puede hacerse. como se describe anteriormente. que prohíbe eliminar filas.. '128M') within your code (ISP permitting). Por otra parte. o no puede cambiar su límite de memoria. Do you want to recover the contents of this workbook? ¿Desea recuperar el contenido de este libro? If you trust the source of this workbook.zip deben trabajar en todo momento. esto sólo le permite escribir excel2007 archivos sin la necesidad de ZipArchive (no leer excel2007 o OOCalc) Excel 2007 no puede abrir el archivo generado por PHPExcel_Writer_2007 en Windows "Excel encontró contenido ilegible en '*. on the discussion board . Usted puede encontrar algunas indicaciones sobre el rendimiento relativo y el uso de memoria para los diferentes lectores y escritores.. o utilizando iniset ('memory_limit'.php. Puede volver a usar ZipArchive llamando al: PHPExcel_Settings::setZipClass(PHPExcel_Settings::ZIPARCHIVE). antes de llamar al método save del Escritor excel2007. over the different versions of PHPExcel. Algunas versiones de la extensión php_zip en Windows contiene un error al crear archivos ZIP.PHPExcel_Settings::setZipClass(PHPExcel_Settings::PCLZIP). or by using iniset('memory_limit'. Si ya has aumentado la memoria hasta un máximo.php.” Si confía en el origen de este libro. You can find some indication of the relative performance and memory usage for the different Readers and Writers. xlsx.2-win32latest.ini file.net/win32/php5. En la actualidad. The memory made available to PHP can be increased by editing the value of the memorylimit directive in your php. entonces usted puede utilizar la biblioteca PCLZip como una alternativa al escribir excel2007 archivos.zip should work at all times.net/win32/php5.2-win32-latest. Protección en mi hoja de cálculo no está funcionando? Al hacer uso de cualquiera de las características de protección de hoja de cálculo (por ejemplo.ini.2. Algunos lectores y escritores son más rápidos que otros. la actualización a lo menos y PHP 5.9 debería resolver el problema.

See section: “Setting a column's width” for more details. the actual width is 0. or force recalculation in Excel2003. La respuesta corta es que PHPExcel utiliza una medida donde se incluye el relleno. X característica no funciona con PHPExcel_Reader_Y / PHPExcel_Writer_Z No todas las características de PHPExcel se aplican en todos los / grabador de clases Reader. que es la base de nuestro escritor Excel5. When I open the file in Excel. excel2007 muestra esto correctamente. junto con los diferentes lectores y escritores que los apoyan.71 less than it should be. Use PHPExcel_Writer_Excel5 if you really need calculated values. ¿Cómo puedo usar con mi PHPExcel marco  Hay algunas instrucciones para el uso de PHPExcel con Joomla en el Foro de Joomla!  A page of advice on using PHPExcel in the Yii framework Una página de consejos sobre el uso de PHPExcel en el marco Yii  The Bakery has some helper classes for reading and writing with PHPExcel within CakePHP La panadería tiene algunas clases de ayuda para la lectura y la escritura con PHPExcel en CakePHP  Integrating PHPExcel into Kohana http://www. Cuando abro el archivo en Excel.xls" archivo en la carpeta de documentación /.flynsarmy.$objPHPExcel->getActiveSheet()->getProtection()->setSheet(true). Las fórmulas no parecen ser calculado en el uso de paquete de compatibilidad Excel2003? Este es un comportamiento normal del paquete de compatibilidad. Establecimiento del ancho de columna no es fiable al 100% Tratar de establecer el ancho de columna.com/2010/07/phpexcel-module-for-kohana-3/ y Интеграция PHPExcel и Kohana Framework  Using PHPExcel with Typo3 Usando PHPExcel con Typo3 Joomla autocargador interfiere con PHPExcel autocargador Thanks to peterrlynch for the following advice on resolving issues between the PHPExcel autoloader and Joomla Autoloader Gracias a peterrlynch de los siguientes consejos sobre cuestiones resolver entre el cargador y el cargador automático PHPExcel Joomla PHPExcel Developer Documentation 8 . Por ejemplo Autofiltro no está implementada en PERA Spreadsheet_Excel_writer.flynsarmy.com/2010/07/phpexcel-module-forkohana-3/ and Интеграция PHPExcel и Kohana Framework La integración de PHPExcel en Kohana http://www. o de cálculo vigente en Excel2003. un problema de experiencia. Poco a poco estamos creando una lista de características. PHPExcel_Writer_Excel5 utilizar si realmente necesita los valores calculados.71 menos de lo que debería ser. Vea la sección: "Marco columna de un ancho" para obtener más detalles. This is mostly due to underlying libraries not supporting a specific feature or not having implemented a specific feature. en la "funcionalidad de la Cruz-Reference. el ancho real es de 0. Esto se debe principalmente a las bibliotecas subyacente no apoyar una característica específica o no haber aplicado una característica específica.

net/sozdanie-excel-fajjlov-s-pomoshhyu-phpexcel/ • A Japanese-language introduction to PHPExcel http://journal.developpez.html PHPExcel Developer Documentation 9 .net/sozdanie-excel-fajjlov-s-pomoshhyu-phpexcel/ http://www.com/tutoriels/excel2007/ Russian PHPExcel Blog Postings Rusia PHPExcel publicaciones en blogs http://www.jp/articles/2009/03/06/phpexcel/index.co.mycom.web-junior.jp/articles/2009/03/06/phpexcel/index.3.web-junior.co.com/tutoriels/excel2007/ http://gernaelsten.html Una introducción de lengua japonesa para PHPExcel http://journal. • Tutoriales Inglés PHPExcel tutorial http://openxmldeveloper http://openxmldeveloper • • French PHPExcel tutorial Francés PHPExcel tutorial http://g-ernaelsten.mycom.developpez.2.3.

3. so only those files that are actually required by your script will be loaded into PHP memory. para que utilice menos memoria de PHP. a continuación. si uno quiere crear un punto de vista basado en web. } spl_autoload_register('myAutoload'). si usted tiene: function __autoload($class) { . if you have: Por ejemplo.3. Si sus propios scripts ya definir una función de carga automática.2. } Haga esto en su lugar: function myAutoload($class) { . Arquitectura Esquemática 3. de modo que sólo aquellos archivos que son requeridas por la secuencia de comandos se carga en la memoria de PHP. Spreadsheet(Hoja de Calculo) en memoria La arquitectura PHPExcel se construye de una manera que puede servir como una hoja de cálculo en la memoria.. Su cargador automático a continuación. so that it uses less PHP memory.. Lazy Loader PHPExcel implementa un autocargador o "gestor de perezoso". The main benefit of this is that it reduces the memory footprint of PHPExcel itself. entonces esto puede ser sobreescrito por la función de carga automática PHPExcel. de una hoja de cálculo que se PHPExcel Developer Documentation 10 . Sólo es necesario incluir el archivo inicial de la clase PHPExcel... El principal beneficio de esto es que reduce el consumo de memoria de PHPExcel sí mismo. se co-existir con el cargador automático de PHPExcel. if one would want to create a web based view of a spreadsheet which communicates with PHPExcel's object model. This means that. el cargador automático se incluyen otros archivos de clase cuando sea necesario. It is only necessary to include the initial PHPExcel class file. then the autoloader will include other class files as and when required. For example. 3.1.3. Esto significa que. lo que significa que no es necesario incluir todos los archivos dentro de PHPExcel. he would only have to write the front-end code.

4. los lectores y escritores pueden ser utilizados. imágenes. Al igual que una hoja de cálculo de escritorio. De forma predeterminada.. fórmulas.comunica con el modelo de objetos de PHPExcel. PHPExcel no proporciona la funcionalidad para leer o escribir en una hoja de cálculo persistieron (en el disco o en una base de datos). readers and writers can be used. sólo tendría que escribir el final del código de frente. . entre ellos uno para la hoja de cálculo en formato Open XML (también conocido como formato de archivo de Excel 2007). PHPExcel representa una hoja de cálculo que contiene una o más hojas de cálculo. ya que son libres de aplicar el PHPExcel_Writer_IReader y la interfaz de PHPExcel_Writer_IWriter en una clase personalizada. Escritura y Lectura Por su parte. Para proporcionar esa funcionalidad. que contienen células con datos. 3.. To provide that functionality. PHPExcel Developer Documentation 11 . Usted no está limitado a los lectores y escritores por defecto. el paquete PHPExcel proporciona algunos lectores y escritores.

"). tomemos el siguiente código: $objPHPExcel->getProperties()->setCreator("Maarten Balliauw"). generated using PHP classes. Fluido interfaces PHPExcel soporta interfaces de fluidez en la mayoría de lugares. Esto significa que usted puede fácilmente "cadena" de las llamadas a métodos específicos sin necesidad de una nueva declaración de PHP. $objPHPExcel->getProperties()->setTitle("Office 2007 XLSX Test Document"). $objPHPExcel->getProperties()->setSubject("Office 2007 XLSX Test Document").5. $objPHPExcel->getProperties()->setKeywords("office 2007 openxml php"). Esto significa que usted puede fácilmente "cadena" de las llamadas a métodos específicos sin necesidad de una nueva declaración de PHP Por ejemplo. $objPHPExcel->getProperties()->setLastModifiedBy("Maarten Balliauw"). $objPHPExcel->getProperties()->setDescription("Test document for Office 2007 XLSX.3. PHPExcel Developer Documentation 12 .

pero puede hacer que su código sea más fácil de leer y mantener. generated using PHP classes.  Utilización de interfaces con fluidez no es necesario interfaces de Fluent se han implementado para proporcionar una programación conveniente API. El uso de ellos no es obligatorio.$objPHPExcel->getProperties()->setCategory("Test result file"). PHPExcel Developer Documentation 13 . Use of them is not required. Esto puede ser reescrita como: $objPHPExcel->getProperties() ->setCreator("Maarten Balliauw") ->setLastModifiedBy("Maarten Balliauw") ->setTitle("Office 2007 XLSX Test Document") ->setSubject("Office 2007 XLSX Test Document") ->setDescription("Test document for Office 2007 XLSX.") ->setKeywords("office 2007 openxml php") ->setCategory("Test result file"). but can make your code easier to read and maintain.

los métodos de almacenamiento en caché están disponibles las siguientes. grandes libros tan rápido puede utilizar la memoria disponible. El almacenamiento en caché de una celda PHPExcel utiliza un promedio de alrededor de 1k/cell en sus hojas de trabajo. De forma predeterminada.2. en el documento la configuración de seguridad y meta datos del documento. las células se mantienen en la memoria de PHP como un conjunto de objetos en serie. el almacenamiento en caché de la célula es un mecanismo que permite PHPExcel para mantener los objetos de células en un tamaño más pequeño de la memoria. pero puede especificar alternativas. $cacheMethod = PHPExcel_CachedObjectStorageFactory::cache_in_memory. Usted no puede cambiar los ajustes de configuración una vez que han comenzado a leer un libro. aunque a un costo de velocidad para acceder a datos de la celda. 4. Esto le permite reducir el uso de memoria para los libros grandes. lo que reduce la huella de memoria con sobrecarga de PHPExcel Developer Documentation 14 . objetos de la célula se mantiene en la memoria de PHP como en la actualidad.1. PHPExcel_Settings::setCacheStorageMethod($cacheMethod). falso en caso de fallo (por ejemplo. Opciones de configuración Una vez que se han incluido los archivos PHPExcel en el script. entonces este es el método que usará PHPExcel. El valor por defecto. 4. Para habilitar el almacenamiento en caché de células. hay una serie de opciones de configuración que se puede establecer que afectarán el comportamiento posterior de la secuencia de comandos. pero antes de crear instancias de un objeto PHPExcel o cargar un archivo de libro. 4. PHPExcel todavía tiene todos los objetos de celda de memoria. Si no inicializar cualquier método de almacenamiento en caché. pasando por el método de almacenamiento en caché que desea utilizar. La memoria caché se mantiene por separado para cada hoja de cálculo individual.2. el disco. Creación de una spreadsheet(Hoja de calculo) La clase PHPExcel La clase PHPExcel es el núcleo de PHPExcel. en lugar de en la memoria de PHP. PHPExcel_CachedObjectStorageFactory::cache_in_memory.4. y se crea automáticamente cuando se crea una instancia de la hoja de cálculo basado en el método de almacenamiento en caché y la configuración que ha configurado. setCacheStorageMethod() devolverá un booleano true si tiene éxito. memcache o WinCache. PHPExcel_CachedObjectStorageFactory::cache_in_memory_serialized. Para simplificar el concepto PHPExcel: la clase PHPExcel representa el libro. se debe llamar al PHPExcel_Settings:: setCacheStorageMethod () método. o en APC. Contiene referencias a las hojas de cálculo que figura. o han creado su primera hoja de cálculo. El uso de este método de almacenamiento en caché.1. Cell objects are maintained in PHP memory as at present. si tratando de caché a APC en APC no está habilitado). En la actualidad.

rendimiento mínimo. Cuando se utiliza cache_to_discISAM todas las células se mantienen en un archivo temporal en disco. aunque el acceso a leer o escribir en una celda es un poco más lento. PHPExcel_CachedObjectStorageFactory::cache_to_apc. $cacheSettings). un tiempo de espera de caché de APC de 600 segundos se utiliza. PHPExcel_CachedObjectStorageFactory::cache_to_memcache PHPExcel Developer Documentation 15 . pero reduce significativamente el consumo de memoria. este método mantiene las células en la memoria de PHP como un conjunto de objetos en serie. pero puede cambiar esto cuando la inicialización cache_to_phpTemp. En PHP. Esto es más lento que cualquiera de los métodos cache_in_memory. $cacheMethod = PHPExcel_CachedObjectStorageFactory::cache_to_APC. Por defecto. $cacheSettings). El archivo de disco temporal se elimina automáticamente cuando el script finaliza. Cuando se utiliza cache_to_apc. pero gzip para reducir el uso de la memoria aún más. PHPExcel_Settings::setCacheStorageMethod($cacheMethod. El valor por defecto es de 1 MB. but you can change this when initialising cache_to_phpTemp. objetos de células se mantienen en un APC con sólo un índice mantiene en la memoria de PHP para determinar que la célula existe. PHPExcel_Settings::setCacheStorageMethod($cacheMethod. Al igual que cache_in_memory_serialized. con sólo un índice para su ubicación mantiene en la memoria de PHP. utilizando las cache_to_phpTemp todas las células se llevan a cabo en el php: / / temp I / O corriente. The default is 1 MB. con independencia del valor cacheTime. por lo que no se puede utilizar para el almacenamiento persistente utilizando este mecanismo. con sólo un índice para su ubicación en ese archivo mantiene en la memoria de PHP. que debería ser suficiente para la mayoría de las aplicaciones: aunque es posible cambiar esto cuando la inicialización cache_to_APC. PHPExcel_CachedObjectStorageFactory::cache_in_memory_gzip. El php: // archivo temporal se elimina automáticamente cuando el script finaliza. Al igual que cache_to_discISAM. PHPExcel_CachedObjectStorageFactory::cache_to_discISAM. $cacheMethod = PHPExcel_CachedObjectStorageFactory:: cache_to_phpTemp. $cacheSettings = array( ' memoryCacheSize ' => '8MB' ). el php: / / memoria almacena contenedor de datos en la memoria: php: / / temp se comporta de manera similar. PHPExcel_CachedObjectStorageFactory::cache_to_phpTemp. $cacheSettings = array( 'cacheTime' => 600 ). Cuando termina la secuencia de comandos todas las entradas serán retiradas de APC. pero usa un archivo temporal para almacenar los datos cuando un límite de memoria se alcanza cierto.

Cuando se utiliza cache_to_memcache. PHPExcel busca un servidor memcache en localhost en el puerto 11211. $cacheSettings = array( 'memcacheServer' => 'localhost'. Cuando termina la secuencia de comandos todas las entradas serán retiradas de memcache.5 Locale Settings for Formulae .2. $cacheSettings). Para establecer la configuración regional de portugués de Brasil se debería utilizar: $locale = 'pt_br'. objetos de células se mantienen en WinCache 3 con sólo un índice mantiene en la memoria de PHP para determinar que la célula existe. 'cacheTime' => 600 ). incluida una lista de los idiomas y las configuraciones regionales compatibles actualmente.2. } Si los archivos de idioma portugués de Brasil no están disponibles. PHPExcel_Settings::setCacheStorageMethod($cacheMethod. $validLocale = PHPExcel_Settings::setLocale($locale). independientemente del valor cacheTime. if (!$validLocale) { echo 'Unable to set locale to '. los portugueses se habilitará en su lugar: si la lengua portuguesa archivos no están disponibles. por lo que no se puede utilizar para el almacenamiento persistente utilizando este mecanismo. De forma predeterminada. por lo que no se puede utilizar para el almacenamiento persistente utilizando este mecanismo. independientemente del valor cacheTime. Puede establecer una configuración regional al cambiar la configuración. 4. entonces el setlocale () método devolverá un error. PHPExcel_CachedObjectStorageFactory::cache_to_wincache. Cuando termina la secuencia de comandos todas las entradas serán retiradas de WinCache. Más detalles de las funciones disponibles una vez a la configuración regional se ha establecido. PHPExcel_Settings::setCacheStorageMethod($cacheMethod. or defecto. Idioma / Configuración regional Algunos elementos de localización han sido incluidos en PHPExcel. y el Inglés Americano (es_es) configuración se utiliza en todo. un tiempo de espera de caché WinCache de 600 segundos se utiliza.5. PHPExcel Developer Documentation 16 . entonces usted puede cambiar estos valores predeterminados al inicializar cache_to_memcache: $cacheMethod = PHPExcel_CachedObjectStorageFactory::cache_to_memcache. Si está ejecutando memcache en un servidor diferente o un puerto. Configuración regional para los preparados . $cacheSettings = array( 'cacheTime' => 600 ). $cacheSettings). $cacheMethod = PHPExcel_CachedObjectStorageFactory::cache_to_wincache.reverting to en_us<br />\n". a continuación. se encuentra en la sección 4. que debería ser suficiente para la mayoría de las aplicaciones: a pesar de que es posible cambiar esta inicialización cache_to_wincache cuando.$locale. Cuando se utiliza cache_to_wincache. objetos de células se mantienen en memcache 2 con sólo un índice mantiene en la memoria de PHP para determinar que la célula existe. 'memcachePort' => 11211." . También establece un límite de tiempo de espera memcache de 600 segundos.

4. Si usted necesita el valor calculado de una celda. Accessing cells Acceso a las células en una hoja de cálculo PHPExcel debería ser bastante sencillo. la primera celda debe ser recuperada de la hoja de cálculo utilizando el método getCell.4. Esto se explica en 4.2. Este tema se enumeran algunas de las opciones para acceder a una celda.35 . El establecimiento de un valor de la celda por coordenada El establecimiento de un valor de la celda por coordenadas se puede hacer utilizando los setCellValue método de la hoja de cálculo.3. el libro está relacionada con las hojas de cálculo y las hojas de trabajo están vinculados a su libro de los padres).5. gráficos. $objPHPExcel->getActiveSheet()->getCell('B8')->getCalculatedValue(). Tiene todos los datos que desea representar como una hoja de cálculo hoja de cálculo. imágenes. 8. 4. 4. El resultado de esto es "pérdidas de memoria". 'Some value'). PHPExcel proporciona la disconnectWorksheets () para este propósito. 4. 4. que fácilmente se puede utilizar una gran cantidad limitada de memoria de PHP. fórmula. Esto sólo se puede resolver de forma manual: si es necesario desarmar un libro.3. Recuperación de una celda de coordenadas Para recuperar el valor de una celda. o al final de una función cuando están en el ámbito local.4..5. $objPHPExcel->disconnectWorksheets().. PHPExcel Developer Documentation 17 . El valor de una celda se puede leer de nuevo con la siguiente línea de código: $objPHPExcel->getActiveSheet()->getCell('B8')->getValue().5. utilice el siguiente código. // Set cell B8 $objPHPExcel->getActiveSheet()->setCellValueByColumnAndRow(1.1. entonces también hay que "romper" estas referencias cíclicas antes de hacerlo. El establecimiento de un valor de celda de la columna y la fila El establecimiento de un valor de la celda por coordenadas se puede hacer uso de hoja de cálculo de setCellValueByColumnAndRow método. Eliminación de un libro de la memoria El objeto PHPExcel contiene referencias cíclicas (por ejemplo.5. 4. Worksheets Una hoja de cálculo es una colección de celdas. . 'Some value'). PHPExcel provides the disconnectWorksheets() method for this purpose. unset($objPHPExcel). $objPHPExcel->getActiveSheet()->setCellValue('B8'. que causa problemas cuando PHP intenta borrar los objetos de la memoria cuando se unset ().

"\n". Esto se explica en 4. "\n". '</td>' .xlsx"). $cellIterator = $row->getCellIterator(). PHPExcel Developer Documentation 18 . $objReader->setReadDataOnly(true). foreach ($cellIterator as $cell) { echo '<td>' . "\n". aunque no se establecieron antes. "\n". 8)->getValue().35 // Obtener la celda B8 $objPHPExcel->getActiveSheet()->getCellByColumnAndRow(1. } echo '</table>' . 4. Uso de iteradores. Si usted necesita el valor calculado de una celda.5.5. la primera celda debe ser recuperada de la hoja de cálculo utilizando el método getCellByColumnAndRow. foreach ($objWorksheet->getRowIterator() as $row) { echo '<tr>' .4. "\n". Esto hace que el bucle iterador todas las células. echo '<table>' . $cellIterator->setIterateOnlyExistingCells(false). // De forma predeterminada. filas y celdas. El valor de una celda se puede leer de nuevo con la siguiente línea de código: // Obtener la celda B8 $objPHPExcel->getActiveSheet()->getCellByColumnAndRow(1. ?> Tenga en cuenta que nos hemos fijado célula iterador setIterateOnlyExistingCells del () en false. <?php $objReader = PHPExcel_IOFactory::createReader('Excel2007'). Recuperación de una celda por columna y fila Para recuperar el valor de una celda. // Aunque no está establecida. } echo '</tr>' . utilice el siguiente código. $objWorksheet = $objPHPExcel->getActiveSheet(). $objPHPExcel = $objReader->load("test. // Este lazos de todas las células.4.5. $cell->getValue() . uno puede usar foreach para hojas de cálculo de bucle. 8)->getCalculatedValue().4. A continuación se muestra un ejemplo donde se lee todos los valores de una hoja de cálculo y los muestra en una tabla. Looping celdas Looping céldas utilizando iteradores La manera más fácil a las células del lazo es el uso de iteradores. sólo las células // Que están a uno se // Itera.

1) A continuación se muestra un ejemplo donde se lee todos los valores de una hoja de cálculo y los muestra en una tabla. $col <= $highestColumnIndex.5. $objReader->setReadDataOnly(true). Opcionalmente. That means 'A1' ~ (0. '</td>' . <?php $objReader = PHPExcel_IOFactory::createReader('Excel2007'). el comportamiento predeterminado de PHPExcel puede ser modificado.1) Eso significa 'A1' ~ (0. } echo '</tr>' . lo que facilita la entrada de datos. "\n". En el ejemplo siguiente se muestra cómo establecer la carpeta de valor en PHPExcel: /** PHPExcel */ require_once 'PHPExcel. "\n". $highestRow = $objWorksheet->getHighestRow(). $row)->getValue() . ejemplo 5 echo '<table>' . también establecer el estilo de la información de la célula. Marco célula iterador setIterateOnlyExistingCells la () para bucle falsas todas las celdas de la hoja de cálculo que puede estar disponible en ese momento. ?> 4. // ejemplo 10 $highestColumn = $objWorksheet->getHighestColumn().xlsx"). $objWorksheet->getCellByColumnAndRow($col.php'. Por ejemplo. "\n". for ($col = 0. "\n".6. for ($row = 1. Esto creará nuevas células si el aumento de uso de memoria y necesario! Sólo se debe usar si está destinado a todas las células del lazo que eventualmente disponibles. El repetidor celda devolverá null como la celda si no se establece en la hoja de cálculo. $objPHPExcel = $objReader->load("test. $objWorksheet = $objPHPExcel->getActiveSheet(). // ejemplo 'F' $highestColumnIndex = PHPExcel_Cell::columnIndexFromString($highestColumn). mientras que índice de la fila es de base 1. Uso de carpetas valor para facilitar la entrada de datos Internamente. ++$col) { echo '<td>' . "\n". } echo '</table>' . una clase PHPExcel_Cell_AdvancedValueBinder está presente. Convierte automáticamente los porcentajes y las fechas de entrada como cadenas con el formato correcto. PHPExcel PHPExcel_Cell_IValueBinder utiliza una implementación por defecto (PHPExcel_Cell_DefaultValueBinder) para determinar los tipos de datos de los datos introducidos mediante una célula setValue () método.1) en lugar de 'A1' para leer y escribir valores de las celdas en bucles.  Nota: En el índice de la columna PHPExcel está basado en 0. ++$row) { echo '<tr>' . $row <= $highestRow. Bucle de células por medio de índices Se puede utilizar la posibilidad de acceder a los valores de celda y la fila de índice de columna como (0. PHPExcel Developer Documentation 19 .

$objPHPExcel->getProperties()->setTitle("Office 2007 XLSX Test Document"). // Establecer la carpeta de valorPHPExcel_Cell::setValueBinder( new PHPExcel_Cell_AdvancedValueBinder() ). 4. Microsoft Sharepoint utiliza los metadatos del documento para buscar un documento específico en el documento sus listas. $objPHPExcel->getProperties()->setKeywords("office 2007 openxml php").. $objPHPExcel->getActiveSheet()->setCellValue('B4'. PHPExcel Developer Documentation 20 . // Convierte a la fecha y establece el formato de fecha estilo de celda  La creación de su propio valor aglutinante es fácil. $objPHPExcel->getProperties()->setLastModifiedBy("Maarten Balliauw").6. como Carta EE. $objPHPExcel->getProperties()->setCategory("Test result file").6.php'. consulte la documentación de la API. puede implementar la interfaz PHPExcel_Cell_IValueBinder o ampliar las clases o PHPExcel_Cell_AdvancedValueBinder PHPExcel_Cell_DefaultValueBinder. generated using PHP classes.1 y conjuntos de estilo de celda porcentaje $objPHPExcel->getActiveSheet()->setCellValue('A5'. metadatos de hoja de cálculo puede ser útil para encontrar un documento específico en un repositorio de archivos o un sistema de gestión de documentos.1. Si necesita las funciones específicas de la API./** PHPExcel_Cell_AdvancedValueBinder */ require_once 'PHPExcel/Cell/AdvancedValueBinder. // Agregar algunos datos. 4. // . // Convierte a 0. Marco de orientación de la página y el tamaño de una hoja de cálculo abarca establecer una orientación de página A4.. '10%'). $objPHPExcel->getProperties()->setSubject("Office 2007 XLSX Test Document"). PHPExcel recetas Las siguientes páginas le ofrecemos algunas recetas utilizan PHPExcel-ampliamente. $objPHPExcel->getProperties()->setDescription("Test document for Office 2007 XLSX."). $objPHPExcel->getActiveSheet()->setCellValue('B5'. hoja de cálculo de metadatos Marco se hace de la siguiente manera: $objPHPExcel->getProperties()->setCreator("Maarten Balliauw").php'. Otros formatos de papel. 4. asemejándose a algunos tipos de datos diferentes $objPHPExcel->getActiveSheet()->setCellValue('A4'.4. Al enlazar avanzada valor es necesario. 'Percentage value:'). Por ejemplo. pero en la documentación de la API PHPExcel.UU. 'Date/time value:').. Tenga en cuenta que estos no ofrecen una documentación completa sobre determinados PHPExcel funciones de la API. /** PHPExcel_IOFactory */ require_once 'PHPExcel/IOFactory. '21 December 1983').7 Setting a worksheet's page orientation and size covers setting a page orientation to A4. no están cubiertos en este documento. utilizando la propiedad de acceso de documento. Por ejemplo. pero sólo un golpe para empezar. // Crear un nuevo objeto PHPExcel $objPHPExcel = new PHPExcel(). Marco de hoja de cálculo de los metadatos de un PHPExcel permite una manera fácil de configurar una hoja de cálculo de metadatos.

//-Como la fecha y hora MySQL '2008-12-31 ' PHPExcel_Cell::setValueBinder( new PHPExcel_Cell_AdvancedValueBinder() ). todos dan el mismo resultado. Usted puede verificar esto en Microsoft Office Excel mediante la introducción de esa fecha en una celda y después cambiar el formato de número a "General" por lo que el valor numérico verdad se revela. Vea la sección "Uso de carpetas de valor para facilitar la entrada de datos" para obtener más información acerca de la AdvancedValueBinder utilizados en el primer ejemplo. Notas: 1. $objPHPExcel->getActiveSheet()->setCellValue('D1'. He aquí algunos ejemplos: /* PHPExcel_Cell_AdvanceValueBinder necesarios para esta muestra */ require_once 'PHPExcel/Cell/AdvancedValueBinder.3. Marco activa de hoja de una hoja de cálculo La siguiente línea de código establece el índice de hoja activa a la primera hoja: $objPHPExcel->setActiveSheetIndex(0). '2008-12-31') $objPHPExcel->getActiveSheet()->getStyle('D1')->getNumberFormat()>setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDDSLASH) // PHP-tiempo (tiempo Unix) $time = gmmktime(0. A partir de PHPExcel 1.php'. 4. PHPExcel_Style_NumberFormat proporciona una gran cantidad de formatos de fecha definida-pre.0. Excel también puede funcionar en una basada en el calendario 1904 (por defecto para libros guardados en Mac).6. usted no tiene que preocuparse por esto cuando se utiliza PHPExcel.2008).4.6. cuando una célula tenía un formato de número de código como la fecha. 3.2.31. 2.6. Escribe una fecha en una celda En Excel.6. Escribir un valor de fecha en una celda se compone de dos líneas de código.7 this is no longer supported. 39813) $objPHPExcel->getActiveSheet()->getStyle('D1')->getNumberFormat()>setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDDSLASH) Los métodos anteriores para introducir una fecha. // int(1230681600) $objPHPExcel->getActiveSheet()->setCellValue('D1'.12. era posible introducir una fecha directamente a través de un número entero de PHP en tiempo sin tener que convertirlos a formato de fecha de Excel. Starting with PHPExcel 1. las fechas se almacenan como valores numéricos contando el número de días transcurridos desde el 1/1/1900. la fecha '2008-12-31 'se representa como 39813. Por ejemplo. Normalmente.7 esta ya no se admite. PHPExcel Developer Documentation 21 . PHPExcel_Shared_Date::PHPToExcel($time)) $objPHPExcel->getActiveSheet()->getStyle('D1')->getNumberFormat()>setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDDSLASH) // Excel en tiempo $objPHPExcel->getActiveSheet()->setCellValue('D1'. Seleccione el método que más le convenga mejor.6.0.6. En versiones anteriores de PHPExcel hasta e incluyendo 1.

4." lucro "." pérdida ")" en la celda B8.' (period) (Período)  Function argument separator is '.4.4. Una vez que haya establecido una configuración regional." (coma)  Matrix row separator is '. $translatedFormula = PHPExcel_Calculation::getInstance()->_translateFormulaToLocale($formula)." .6. y la configuración de Inglés se utilizará en todas partes.$locale. Puede establecer una configuración regional al cambiar la configuración. Configuración regional para los preparados en Algunos elementos de localización han sido incluidos en PHPExcel. Escribir una fórmula en una celda Dentro del archivo de Excel. Esto significa que las siguientes reglas espera:  separador decimal es '. Esto se explica en 4. $value = $objPHPExcel->getActiveSheet()->getCell('B8')->getCalculatedValue(). } Si el idioma de los archivos rusos no están disponibles.35 . las fórmulas siempre se almacenan como aparecerían en una versión en Inglés de Microsoft Office Excel." (coma)  English function names must be used función de los nombres de Inglés debe ser utilizado Esto es independientemente de la versión de idioma de Microsoft Office Excel puede haber sido utilizado para crear el archivo de Excel. Translation is taken care of by the application! La traducción es a cargo de la aplicación! La siguiente línea de código escribe la fórmula "= SI (C4> 500. puede traducir una fórmula de su interior Inglés codificación. $formula = $objPHPExcel->getActiveSheet()->getCell('B8')->getValue().reverting to en_us<br />\n".5. Al final del libro se abre por el usuario.' (comma) argumento de separación de funciones es ".' (semicolon) fila separador de Matrix es ". Microsoft Office Excel se encargará de mostrar la fórmula según la lengua aplicaciones. utilice el siguiente código."loss")'). Si usted necesita el valor calculado de una celda. Tenga en cuenta que la fórmula debe comenzar con "=" para hacer PHPExcel reconocer esto como una fórmula. de células de la fórmula A se puede leer de nuevo con la siguiente línea de código: $formula = $objPHPExcel->getActiveSheet()->getCell('B8')->getValue().'=IF(C4>500. $validLocale = PHPExcel_Settings::setLocale($locale). el setlocale () método devolverá un error. y PHPExcel maneja todas las fórmulas internamente en este formato.. Para establecer la configuración regional de Rusia debe utilizar: $locale = 'ru'.4. if (!$validLocale) { echo 'Unable to set locale to '.6. PHPExcel Developer Documentation 22 . $objPHPExcel->getActiveSheet()->setCellValue('B8'."profit".

PHPExcel Developer Documentation 23 .12. $objPHPExcel->getActiveSheet()->getStyle('A1')->getAlignment()->setWrapText(true).ИСТИНА)'.   Tip Lea más sobre el formato de celdas utilizando getStyle () en otro lugar.php se enciende automáticamente "ajustar el texto" de la celda cuando se ve un carácter de nueva línea en una cadena que va a insertar en una celda. las constantes TRUE y FALSE.ДАТА(2010. PHPExcel_Cell::setValueBinder( new PHPExcel_Cell_AdvancedValueBinder() ).También puede crear una fórmula que utiliza los nombres de función y separadores de argumentos apropiados para la configuración regional definida. Just like Microsoft Office Excel. Tip AdvancedValuebinder.31). $internalFormula = PHPExcel_Calculation::getInstance()->translateFormulaToEnglish($formula).6. y los separadores argumento de la función. Aquí es cómo lograr esto en PHPExcel: $objPHPExcel->getActiveSheet()->getCell('A1')->setValue("hello\nworld"). En la actualidad. la configuración regional se admiten los siguientes: Language Czech Danish German Spanish Finnish French Hungarian Italian Dutch Norwegian Polish Portuguese Brazilian Portuguese Russian Swedish Čeština Dansk Deutsch Español Suomi Français Magyar Italiano Nederlands Norsk Język polski Português Português Brasileiro русский язык Svenska Locale Code Cs Da De Es Fi Fr Hu It Nl No Pl pt pt_br ru Sv 4. $objPHPExcel->getActiveSheet()->setCellValue('B8'. $objPHPExcel->getActiveSheet()->getCell('A1')->setValue("hello\nworld").5). automáticamente se convierte en "ajustar el texto" para la célula. Cuando se hace esto.2. En la actualidad.6.php elsewhere. Prueba esto: require_once 'PHPExcel/Cell/AdvancedValueBinder. Al igual que Microsoft Office Excel.$internalFormula). Escriba un carácter de nueva línea "\ n" en una celda (Alt + Enter) En Microsoft Office Excel que conseguir un salto de línea en una celda pulsando ALT + "Enter".php'. Read more about AdvancedValueBinder. y luego traducirlo al Inglés antes de establecer el valor de la celda: $formula = '=ДНЕЙ360(ДАТА(2010. la traducción sólo traduce la fórmula nombres de las funciones.

Por favor. consulte la documentación de la API para todas las opciones posibles. utilice el siguiente código: $objPHPExcel->getActiveSheet()->setCellValue('E26'. Si usted desea hacer un hipervínculo a otra hoja de cálculo o la celda. o el método setCellValueExplicit de una hoja de cálculo. 4.phpexcel. PHPExcel_Cell_DataType::TYPE_NUMERIC).7.net'). Los valores por defecto en PHPExcel corresponden a valores por defecto de MS Office Excel.4. Marco orientación de la página una hoja de cálculo y el tamaño Marco orientación de la página una hoja de cálculo y el tamaño se puede hacer utilizando las siguientes líneas de código: $objPHPExcel->getActiveSheet()->getPageSetup()>setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE). como se muestra en la ilustración PHPExcel Developer Documentation 24 . $objPHPExcel->getActiveSheet()->getCell('E26')->getHyperlink()>setUrl(“sheet://'Sheetname'!A1”). He aquí un ejemplo: de las Naciones Unidas: $objPHPExcel->getActiveSheet()->getCell('A1')->setValueExplicit('25'. Cambiar una celda en una dirección URL hacer clic en Usted puede hacer que una célula puede hacer clic en una dirección URL mediante el establecimiento de su propiedad hipervínculo: $objPHPExcel->getActiveSheet()->setCellValue('E26'.net'). 4.6. 'www.phpexcel. Tenga en cuenta que existen opciones adicionales de páginas disponibles.6.phpexcel. 'www.9. $objPHPExcel->getActiveSheet()->getPageSetup()>setPaperSize(PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4). Establezca explícitamente tipo de datos de una celda Puede configurar tipo de datos de una celda explícitamente mediante el método setValueExplicit de la célula. 4. Configurar página: Escala de opciones Las opciones de configuración de página de escala en PHPExcel se relacionan directamente con las opciones de escala en la sección "Configurar página" de diálogo como se muestra en la ilustración.6.net').8. $objPHPExcel->getActiveSheet()->getCell('E26')->getHyperlink()>setUrl('http://www.10.6.

1.) initial value false 100 1 1 calling method will trigger setFitToPage(false) setFitToPage(true) setFitToPage(true) Note value 0 means do-not-fit-towidth value 0 means do-not-fit-toheight Ejemplo Así es como para ajustarse a una página de ancho por altura infinita páginas: $objPHPExcel->getActiveSheet()->getPageSetup()->setFitToWidth(1)..) provoca esto. $objPHPExcel->getActiveSheet()->getPageSetup()->setFitToHeight(0).7.) setFitToWidth(.  Si utiliza setFitToWidth () debe..6...method setFitToPage(. 4. no es necesario llamar a setFitToPage (verdadero) desde setFitToWidth (. en general. Página de márgenes Para establecer los márgenes de página de una hoja de cálculo.) y setFitToHeight (. Como puede ver.7..) setScale(.) setFitToHeight(. Tenga cuidado de confiar en los valores iniciales.0 a 1...... también se especifica setFitToHeight () de forma explícita como en el ejemplo. utilice el código: PHPExcel Developer Documentation 25 .. donde los valores predeterminados para el ajuste a la altura y el ajuste de ancho-a cambiado de 0 a 1.11.. Esto es especialmente cierto si usted está actualizando desde PHPExcel 1.

13. $objPHPExcel->getActiveSheet()->getHeaderFooter()->setOddFooter('&L&B' . $objPHPExcel->getActiveSheet()->getPageMargins()->setRight(0. La primera aparición de los siguientes códigos convierte el formato ON.75). 4.$objPHPExcel->getActiveSheet()->getPageMargins()->setTop(1). $objPHPExcel->getProperties()->getTitle() . Sustitución y códigos de formato (a partir de y) se puede utilizar dentro de los encabezados y pies de página.12. la segunda aparición convierte OFF de nuevo: • • • Strikethrough Tachado Superscript Sobrescrito Subscript Subíndice PHPExcel Developer Documentation 26 . Tenga en cuenta que los valores de los márgenes se especifican en pulgadas. Ajuste de la cabecera y pie de página de impresión de una hoja de cálculo Marco hoja de impresión de un encabezado y pie de página se puede hacer utilizando las siguientes líneas de código: $objPHPExcel->getActiveSheet()->getHeaderFooter()->setOddHeader('&C&HPlease treat this document as confidential!'). '&RPage &P of &N'). $objPHPExcel->getActiveSheet()->getPageMargins()->setBottom(1). 4.6. $objPHPExcel->getActiveSheet()->getPageMargins()->setLeft(0. Centro de una página horizontal / vertical Para centrar una página horizontal / vertical.6. $objPHPExcel->getActiveSheet()->getPageSetup()->setVerticalCentered(false). puede utilizar el código siguiente: $objPHPExcel->getActiveSheet()->getPageSetup()->setHorizontalCentered(true). No hay un orden necesario en el que estos códigos deben aparecer.75).

Cuando dos o más apariciones de este marcador de sección existen. PHPExcel_Worksheet_HeaderFooter::IMAGE_HEADER_LEFT). y se coloca en la sección central. Código para "la ruta del archivo de este libro" Código para "nombre de archivo de este libro" Código de la "ficha nombre de la hoja" Código para agregar a la página # Código de restar de la página # PHPExcel Developer Documentation 27 . S es "+" o "-" del / valor sombra tinte. Lo que ocurra primero gana y el otro se pasa por alto.Superíndice y subíndice no puede ser ambas ON al mismo tiempo. asegúrese de agregar la imagen a la cabecera / pie de página: $objDrawing = new PHPExcel_Worksheet_HeaderFooterDrawing(). y "derecha")./images/phpexcel_logo. Cuando dos o más apariciones de este marcador de sección existen. donde el tamaño de la fuente es un tamaño de fuente en puntos. la "izquierda". Código para la "fecha" Código para el "tiempo" Código para la "imagen de fondo" Por favor. mientras que el primero está en ON. &U &E &R &Z &F &A &+ &- Código de "solo texto subrayado" Código de la "doble subrayado" Código de la "sección de la derecha".gif'). en el orden de aparición. $objDrawing->setName('PHPExcel logo'). $objDrawing->setPath('. Cuando dos o más apariciones de este marcador de sección existen. y se coloca en la parte izquierda. el contenido de todos los marcadores se concatenan. $objDrawing->setHeight(36). NN es el tono / valor sombra. el contenido de todos los marcadores se concatenan. &S &X &Y &C &D &T &G Código para "tachado de texto" on / off Código para "super script de texto" on / off Code for "text subscript" on / off Código para "el texto en subíndice" on / off Código de la "sección central". en el orden de aparición. "centro". $objPHPExcel->getActiveSheet()->getHeaderFooter()>addImage($objDrawing. en el orden de aparición. Código de "color de la fuente de texto" » » RGB color se especifica como RRGGBB Tema de color es specifed como TTSNN donde TT es el Id color del tema. Código de la "página actual #" Código de "páginas totales" Código para "el tamaño de fuente de texto". y se coloca en la sección derecha. Los códigos siguientes son compatibles con excel2007: &L &P &N &font size &K Código de la "sección de la izquierda" (hay tres de cabecera y localidades de pie de página. el contenido de todos los marcadores se concatenan.

Ambos nombre de la fuente y el tipo de fuente puede ser valores localizados.Regular" &"-. descomprimirlo. que significa "no especificado".Bold" &B &"-.xml para encontrar los códigos de encabezado y pie de página.xlsx'). cree en Microsoft Office Excel un archivo xlsx donde se inserta el encabezado y pie de página como desee usando los programas de la propia interfaz. PHPExcel Developer Documentation 28 .xlsx . 4. e inspeccionar directamente el contenido de la xl pertinentes / hojas / sheetX.Bold Italic" &O &H Código para "nombre de la fuente de texto" y "fuente de texto tipo". hay una manera más fácilDeje que Microsoft Office Excel hacer el trabajo por usted. que establece un descanso de fila en fila 10.xlsx a test.15. Save file as test. Cuando aparece un guión en el nombre de la fuente. Que revela los códigos para la par / impar encabezado y pie de página.14. $objPHPExcel->getActiveSheet()->setBreak( 'A10' .font type" &"-. Por ejemplo. Mostrar u ocultar líneas de división de impresión cuando Para mostrar / ocultar líneas de división al imprimir. Los usuarios experimentados pueden encontrar más fácil cambiar el nombre de test.xlsx. Afortunadamente. Guardar archivo como test. var_dump($objWorksheet->getHeaderFooter()->getEvenHeader()). PHPExcel_Worksheet::BREAK_ROW ). utilice el siguiente código. var_dump($objWorksheet->getHeaderFooter()->getOddFooter()). utilice el siguiente código: $objPHPExcel->getActiveSheet()->setShowGridlines(true).6. La siguiente línea de código establece un descanso de impresión en la columna D: $objPHPExcel->getActiveSheet()->setBreak( 'D10' .6. Código para la "negrita" Código para la "negrita" Código de "estilo de fuente regular" Código de "estilo de fuente cursiva" Código de "estilo de fuente cursiva" Código para "cursiva negrita" Código de "estilo de esquema" Código de "estilo de sombra"  Tip La tabla de arriba de los códigos puede parecer abrumadora primera vez que está tratando de encontrar la manera de escribir algunas de cabecera o pie de página. take that file and read off the values using PHPExcel as follows: Ahora.zip. toma el archivo y leer los valores utilizando PHPExcel de la siguiente manera: $objPHPexcel = PHPExcel_IOFactory::load('test. var_dump($objWorksheet->getHeaderFooter()->getEvenFooter()). Now. 4.Italic" &I &"-. separados por una coma. $objWorksheet = $objPHPexcel->getActiveSheet(). en nombre de la fuente y el tipo de fuente son cadenas que especifica el nombre y el tipo de la fuente. PHPExcel_Worksheet::BREAK_COLUMN ). Marco rompe la impresión en una fila o columna Para establecer un descanso de impresión.&"font name. var_dump($objWorksheet->getHeaderFooter()->getOddHeader()).

ajustado a la derecha. utilice el siguiente código: $objPHPExcel->getActiveSheet()->getPageSetup()->setPrintArea('A1:E5'). Por ejemplo. PHPExcel Developer Documentation 29 .G4:M20'). en vez de labrar las células de forma individual en un bucle. A partir de PHPExcel 1. 5). Especificar el área de impresión Para especificar la hoja de cálculo de área de impresión. $objPHPExcel->getActiveSheet()->getStyle('B2')->getBorders()->getBottom()>setBorderStyle(PHPExcel_Style_Border::BORDER_THICK). Por ejemplo. $objPHPExcel->getActiveSheet()->getStyle('B2')->getBorders()->getRight()>setBorderStyle(PHPExcel_Style_Border::BORDER_THICK).6. puede establecer un fondo de color rojo en un rango de celdas: $objPHPExcel->getActiveSheet()->getStyle('B3:B7')->getFill() ->setFillType(PHPExcel_Style_Fill::FILL_SOLID) ->getStartColor()->setARGB('FFFF0000')..7.  Tip Se recomienda al estilo de las células a la vez. Esto es mucho más rápido en comparación con bucle a través de las células y el estilo de forma individual. 4. utilizando getStyle por ejemplo ("A1: M500). $objPHPExcel->getActiveSheet()->getStyle('B2')->getBorders()->getLeft()>setBorderStyle(PHPExcel_Style_Border::BORDER_THICK). Formato de celdas Una célula puede tener el formato de fuente.6. . $objPHPExcel->getActiveSheet()->getStyle('B2')->getBorders()->getTop()>setBorderStyle(PHPExcel_Style_Border::BORDER_THICK). Marco filas / columnas a repetir en la parte superior / izquierda PHPExcel puede repetir filas específicas / las células en la parte superior e izquierda de una página.16.4. Vamos a hacer que en la celda B2: $objPHPExcel->getActiveSheet()->getStyle('B2')->getFont()->getColor()>setARGB(PHPExcel_Style_Color::COLOR_RED).0 getStyle () también acepta un rango de celdas como un parámetro. $objPHPExcel->getActiveSheet()->getStyle('B2')->getAlignment()>setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT). borde. y la frontera a frontera gruesa estilo y negro. la información de estilo.6.17. $objPHPExcel->getActiveSheet()->getStyle('B2')->getFill()->getStartColor()>setARGB('FFFF0000'). 4. relleno..18. se puede ajustar el color de fondo de una celda a rojo. También se puede imprimir múltiples áreas en una sola hoja de cálculo: $objPHPExcel->getActiveSheet()->getPageSetup()->setPrintArea('A1:E5. El código siguiente es un ejemplo de cómo repetir la fila 1 a 5 en cada página impresa de una hoja de cálculo específica: $objPHPExcel->getActiveSheet()->getPageSetup()>setRowsToRepeatAtTopByStartAndEnd(1. $objPHPExcel->getActiveSheet()->getStyle('B2')->getFill()>setFillType(PHPExcel_Style_Fill::FILL_SOLID).

Aquí hay algunos formatos predefinidos número disponible incluyendo algunas de las fechas.También hay una forma alternativa para establecer estilos.19. 'rotation' => 90. $objPHPExcel->getActiveSheet()->getStyle('A3')->applyFromArray($styleArray).  Antes de PHPExcel 1. también puede aplicar varios formatos predefinidos de número. 'endcolor' => array( 'argb' => 'FFFFFFFF'. borde superior delgado y un relleno de degradado: $styleArray = array( 'font' => array( 'bold' => true. Ejemplo: $objPHPExcel->getActiveSheet()->getStyle('A1')->getNumberFormat() ->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_NUMBER_COMMA_SEPARATED1). Número de formatos A menudo se desea formato a los números en Excel.6.7. ). 4. En Microsoft Office Excel que estén familiarizados con la selección de un formato de número del "Formato de celdas" de diálogo. PHPExcel Developer Documentation 30 . En PHPExcel. El diálogo está diseñado de una manera para que usted no tiene que interactuar con el número de código subyacente formato crudo a menos que necesite un formato de número personalizado. ). pero este método ha quedado en desuso desde getStyle () ha comenzado a aceptar un rango de celdas. ). Pero la diferencia apenas se puede medir a menos que haya diferentes estilos en el libro. O con un rango de celdas: $objPHPExcel->getActiveSheet()->getStyle('B3:B7')->applyFromArray($styleArray). usted puede desear un separador de miles. ). más un número fijo de decimales después del separador decimal. 'startcolor' => array( 'argb' => 'FFA0A0A0'. O tal vez quieres un poco los números para ser rellenado con ceros. alineación derecha. 'borders' => array( 'top' => array( 'style' => PHPExcel_Style_Border::BORDER_THIN. 'alignment' => array( 'horizontal' => PHPExcel_Style_Alignment::HORIZONTAL_RIGHT. ). ). Por ejemplo. ). El código siguiente define el estilo de una célula de negrita. 'fill' => array( 'type' => PHPExcel_Style_Fill::FILL_GRADIENT_LINEAR.0 duplicateStyleArray () es el método recomendado para labrar un rango de celdas. ). Este método alternativo utilizando matrices debe ser más rápido en términos de ejecución cada vez que va a configurar más de una propiedad de estilo.

descomprimir. Ejemplo: $objPHPExcel->getActiveSheet()->getStyle('A1')->getNumberFormat() ->setFormatCode('[Blue][>=3000]$#.20.$#. Cargue su plantilla de libro usando. Alineación y ajustar el texto Vamos a configurar la alineación vertical de la parte superior de las celdas A1: D4 $objPHPExcel->getActiveSheet()->getStyle('A1:D4') ->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_TOP). usted tendrá que interactuar con el formato RAW códigos numéricos siempre que usted necesite algunos de formato número especial. pero no saben lo que el número de código del formato subyacente parece. $objPHPExcel = $objReader->load('template. 1. Los usuarios avanzados pueden encontrar más rápidamente a inspeccionar el código de formato de número directamente por el cambio de nombre a template.Este formato será un número por ejemplo.20 al abrir el libro en Microsoft Office Excel.##0. $objPHPExcel->getActiveSheet()->getStyle('A1')->getNumberFormat() ->setFormatCode('0000'). Aquí es cómo lograr ajustar el texto: $objPHPExcel->getActiveSheet()->getStyle('A1:D4') ->getAlignment()->setWrapText(true). usted sabe cómo crear un formato de número en Microsoft Office Excel.587.xlsx').##0. 4. por ejemplo excel2007 lector a revelar el código de formato de número. PHPExcel Developer Documentation 31 . var_dump($objPHPExcel->getActiveSheet()->getStyle('A1')->getNumberFormat() ->getFormatCode()).xlsx template. así como en PHPExcel.00'). (Dependiendo de la configuración de los separadores decimales y de miles de Microsoft Office Excel que puede aparecer como 1. y en busca de la pieza relevante de código XML de explotación. En Microsoft Office Excel.587.zip.587. Ejemplo de como leer un código de formato de número para la celda A1: $objReader = PHPExcel_IOFactory::createReader('Excel2007').6.##0'). A veces.xml.20) Usted puede conseguir exactamente lo mismo que lo anterior mediante el uso de este: $objPHPExcel->getActiveSheet()->getStyle('A1')->getNumberFormat() ->setFormatCode('#.##0.¿Cómo lo encontraste? Los lectores envían con PHPExcel venir al rescate. el código de formato de número en xl styles. Otro ejemplo es cuando se desea que los números cero rellenado con ceros a la izquierda con una longitud fija: $objPHPExcel->getActiveSheet()->getCell('A1')->setValue(19).[Red][<0]$#. // will show as 0019 in Excel Tip Las reglas para componer un código de formato de número en Excel puede ser bastante complicado.2 por lo que se muestra como 1.

Así es como aplicar un esquema de color rojo borde grueso alrededor de las celdas B2: del G-8. Estilo bordes de la celda En PHPExcel es fácil de aplicar diferentes fronteras en una selección rectangular. $objPHPExcel->getDefaultStyle()->getFont()->setSize(8). la operación anterior se correspondería con la selección de las celdas B2: del G-8.4. ).21.  Tenga en cuenta que las líneas fronterizas se aplica a la selección rectangular B2: del G-8 en su conjunto. 'color' => array('argb' => 'FFFF0000'). $styleArray = array( 'borders' => array( 'outline' => array( 'style' => PHPExcel_Style_Border::BORDER_THICK. no en cada célula individual. En Microsoft Office Excel.22. Configuración del estilo predeterminado de un libro Es posible establecer el estilo predeterminado de un libro. ). y hacer clic en el esquema "componente de la frontera". como en el ejemplo encima de la. 4. la elección de un borde rojo y espeso. Usted puede lograr cualquier efecto de borde mediante el uso de sólo el cinco fronteras de base y operativos en una sola célula en un momento: Array key left right top bottom diagonal Maps to property getLeft() getRight() getTop() getBottom() getDiagonal() acceso directo de las fronteras adicional muy útil. ).6. Vamos a establecer la fuente predeterminada Arial de tamaño 8: $objPHPExcel->getDefaultStyle()->getFont()->setName('Arial'). These are the shortcut borders available: Estos son los límites de acceso directo disponibles: Array key allborders outline inside vertical horizontal Maps to property getAllBorders() getOutline() getInside() getVertical() getHorizontal() Una visión general de todos los accesos directos frontera se puede ver en la siguiente PHPExcel Developer Documentation 32 .6. $objWorksheet->getStyle('B2:G8')->applyFromArray($styleArray). el lanzamiento de el cuadro de diálogo de estilo.

y vertical. vertical y horizontal.imagen:  Si al mismo tiempo establecer allborders por ejemplo. el más débil al más fuerte de las fronteras. contorno / interior. $objConditional2 = new PHPExcel_Style_Conditional(). 4. $objConditional1).23. $conditionalStyles = $objPHPExcel->getActiveSheet()->getStyle('B2')>getConditionalStyles(). array_push($conditionalStyles. izquierda / derecha / arriba / abajo / diagonal. donde no hay fronteras se superponen. Esta jerarquía de la frontera puede ser utilizada para lograr efectos diferentes de una manera fácil. $objConditional2->addCondition('0'). entonces tenemos "superposición" de las fronteras. $objConditional1->setOperatorType(PHPExcel_Style_Conditional::OPERATOR_LESSTHAN). $objConditional1->getStyle()->getFont()->getColor()>setARGB(PHPExcel_Style_Color::COLOR_RED). con base en una norma específica. $objConditional2>setOperatorType(PHPExcel_Style_Conditional::OPERATOR_GREATERTHANOREQUAL). $objConditional1->getStyle()->getFont()->setBold(true). se puede ajustar el color de fondo de una celda a rojo si su valor está por debajo de cero. $objConditional2->getStyle()->getFont()->getColor()>setARGB(PHPExcel_Style_Color::COLOR_GREEN).6. la lista es la siguiente: allborders. y verde si su valor es cero o más. Se puede establecer un conjunto de reglas de estilo condicional a una celda usando el siguiente código: $objConditional1 = new PHPExcel_Style_Conditional(). $objConditional2->setConditionType(PHPExcel_Style_Conditional::CONDITION_CELLIS). $objConditional1->addCondition('0'). $objConditional2). array_push($conditionalStyles. $objConditional2->getStyle()->getFont()->setBold(true). En PHPExcel. $objConditional1->setConditionType(PHPExcel_Style_Conditional::CONDITION_CELLIS). Formato condicional en una celda Una célula puede dar formato condicional. PHPExcel Developer Documentation 33 . y uno de los componentes tiene que ganar sobre el otro. Por ejemplo.

• • La protección de documentos le permite establecer una contraseña en una hoja de cálculo completa. utilice el siguiente código: $objPHPExcel->getActiveSheet()->setAutoFilter('A1:C9'). Añade un comentario a una celda Para agregar un comentario a una celda.6.. la clasificación no permitir.24.  Asegúrese de que siempre incluyen la gama completa de filtro! Excel es compatible con ajuste sólo la fila de título.. $objPHPExcel->getActiveSheet()->getComment('E11')->getText()>createTextRun("\r\n"). 'B3:B7' ). 4.6. lo que permite que se hagan cambios sólo cuando se introduzca la contraseña. $objCommentRichText = $objPHPExcel->getActiveSheet()->getComment('E11')->getText()>createTextRun('PHPExcel:').25. Si desea copiar el conjunto de reglas a otras celdas.. puede duplicar el objeto de estilo: $objPHPExcel->getActiveSheet()->duplicateStyle( $objPHPExcel->getActiveSheet()>getStyle('B2'). Definición de la seguridad en una hoja de cálculo Excel ofrece 3 niveles de "protección": seguridad de los documentos. Hoja de seguridad ofrece otras opciones de seguridad: puede no permitir la inserción de filas en una hoja específica. $objPHPExcel->getActiveSheet()->getComment('E11')->getText()->createTextRun('Total amount on the current invoice. Aplicar autofiltro a un rango de celdas Para aplicar un Autofiltro a un rango de celdas. .26. hojas de seguridad y la seguridad de la célula. excluding VAT. $objCommentRichText->getFont()->setBold(true). 4. pero eso no es una buena práctica ..$objPHPExcel->getActiveSheet()->getStyle('B2')>setConditionalStyles($conditionalStyles). PHPExcel Developer Documentation 34 .'). utilice el siguiente código.6. El ejemplo siguiente agrega un comentario a la celda E11: $objPHPExcel->getActiveSheet()->getComment('E11')->setAuthor('PHPExcel'). 4.

• la seguridad de la célula ofrece la opción de bloquear / desbloquear un celular. así como mostrar / ocultar la fórmula interna Un ejemplo sobre seguridad de los documentos de ajuste: $objPHPExcel->getSecurity()->setLockWindows(true). Un ejemplo de hoja de cálculo de configuración de seguridad: $objPHPExcel->getActiveSheet()->getProtection()->setPassword('PHPExcel').  Asegúrese de activar la protección de hoja de cálculo si necesita alguna de las características de protección de hoja de cálculo.6. $objValidation->setErrorStyle( PHPExcel_Cell_DataValidation::STYLE_STOP ). una lista (en valor debe ser seleccionado de una lista). $objValidation->setError('Number is not allowed!').27. Se permite especificar un filtro de entrada de los datos que se pueden insertar en una celda específica. $objValidation->setPrompt('Only numbers between 10 and 20 are allowed. $objPHPExcel->getActiveSheet()->getProtection()->setInsertRows(true).! Esto se puede hacer utilizando el siguiente código $ objPHPExcel->: getActiveSheet () -> getProtection () -> setSheet (verdadero) 4. $objValidation->setType( PHPExcel_Cell_DataValidation::TYPE_WHOLE ). $objPHPExcel->getSecurity()->setWorkbookPassword("PHPExcel"). Este filtro puede ser un área de distribución (es decir. $objValidation->setShowErrorMessage(true). Un ejemplo de configuración de seguridad de células: $objPHPExcel->getActiveSheet()->getStyle('B1')->getProtection()->setLocked( PHPExcel_Style_Protection::PROTECTION_UNPROTECTED ). el valor debe estar entre 0 y 10). $objValidation->setAllowBlank(true). $objValidation->setShowInputMessage(true). $objPHPExcel->getActiveSheet()->getProtection()->setSort(true).').. $objPHPExcel->getActiveSheet()->getProtection()->setFormatCells(true). $objValidation->setFormula2(20). El siguiente fragmento de código sólo permite un número entre 10 y 20 que se entró en la celda B3: $objValidation = $objPHPExcel->getActiveSheet()->getCell('B3') ->getDataValidation(). Marco de validación de datos en una celda La validación de datos es una potente característica de excel2007. $objValidation->setPromptTitle('Allowed input'). $objValidation->setFormula1(10).. El siguiente fragmento de código sólo permite un elemento seleccionado de una lista de datos que deben figurar en la celda B3: $objValidation = $objPHPExcel->getActiveSheet()->getCell('B5') ->getDataValidation(). $objPHPExcel->getSecurity()->setLockStructure(true). PHPExcel Developer Documentation 35 . $objValidation->setErrorTitle('Input error'). $objPHPExcel->getActiveSheet()->getProtection()->setSheet(true). .

1) Ancho interior en unidades de caracteres (por ejemplo 8. Marco columna del ancho de una Un ancho de columna se puede establecer mediante el siguiente código: $objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(12). $objValidation->setAllowBlank(false).  Es importante recordar que cualquier cadena que participan en una fórmula de Excel se permite un máximo de 255 caracteres (no bytes). $objValidation->setPrompt('Please pick a value from the drop-down list. el valor -1 indica ancho de desconexión) PHPExcel Developer Documentation 36 . $objValidation->setShowDropDown(true).'). 4. 9.$objValidation->setType( PHPExcel_Cell_DataValidation::TYPE_LIST ). 64 píxeles) 3) de ancho total en unidades de caracteres (por ejemplo. Por lo tanto. $objPHPExcel->getActiveSheet()->getColumnDimension('B')->setAutoSize(true).6. La medida para el ancho de columna en PHPExcel no corresponde exactamente a la medida con que se puede utilizar en Microsoft Office Excel. Punto C".43 esto es probablemente lo que usted está familiarizado con en Excel) 2) de ancho total en píxeles (por ejemplo. $objValidation->setErrorStyle( PHPExcel_Cell_DataValidation::STYLE_INFORMATION ).).' personaje. Si desea PHPExcel para realizar un cálculo automático de ancho. $objValidation->setPromptTitle('Pick from list'). PHPExcel se aproximará a la columna con el ancho de la columna de valor más amplia. Otro beneficio es que el tema puede contener los valores propios de la coma '. y en lugar de utilizar.  Cuando se utiliza una lista de validación de datos como los anteriores. $ objValidation-> setFormula1 ('Hoja de 3! $ A $ 1: $ A $'.Item B. asegúrese de poner la lista entre "y" y que divide los elementos con una coma (. $objValidation->setShowErrorMessage(true).28. utilice el siguiente código. se puede clonar el conjunto de reglas: $objPHPExcel->getActiveSheet()->getCell('B8')->setDataValidation(clone $objValidation). Si usted necesita la validación de datos en varias celdas.140625. Punto B. $objValidation->setError('Value is not in list.Item C"'). normalmente es una mejor idea de escribir el artículo directamente los valores en algunos rango de celdas. $objValidation->setShowInputMessage(true).'). por ejemplo A1: A3. Esto establece un límite en el número de elementos que puede tener en la cadena "Punto A. y hay varias medidas para el ancho de columna. por ejemplo. $objValidation->setFormula1('"Item A. $objValidation->setErrorTitle('Input error'). anchos de columna son difíciles de tratar en Excel.

30. Puede indicar PHPExcel para añadir un resumen a la derecha (por defecto). la medida más fiable. $objPHPExcel->getActiveSheet()->getColumnDimension('E')->setVisible(false). $objPHPExcel->getActiveSheet()->getColumnDimension('E')->setCollapsed(true). Marco fila la altura de un Una fila de la altura se puede ajustar mediante el siguiente código: $objPHPExcel->getActiveSheet()->getRowDimension('10')->setRowHeight(100). Por lo tanto ancho de las columnas se mide en unidades de carácter en dos libros diferentes sólo se puede comparar si tienen la fuente predeterminada mismo libro. Unfortunately.6. o hacia la izquierda.6.32. El ejemplo siguiente se oculta la fila número 10. 4. 4. Si tiene algún archivo de Excel y la necesidad de conocer el ancho de las columnas de la medida 3).29. puede leer el archivo de Excel con PHPExcel y el eco de los valores recuperados. Por desgracia.6. de lo contrario la caída no será visible en Excel 2007. 4. Mostrar u ocultar una fila Para establecer la hoja de cálculo de la visibilidad de una fila.PHPExcel siempre opera con 3) "de ancho total en unidades de carácter" que en realidad es el único valor que se almacena en un archivo de Excel. La unidad de ancho de carácter es el ancho de un "0" (cero) glifo en la fuente predeterminada libros. puede utilizar el código siguiente. la segunda línea de la columna oculta D. Grupo / esbozar una fila PHPExcel Developer Documentation 37 .6. Por favor refiérase a la parte "grupo / esbozar una fila" de un ejemplo completo en el colapso. En cambio las medidas 1) y 2) se calculan mediante la aplicación cuando se abre el archivo y estos valores se presentan en diversos diálogos y consejos de la herramienta. Mostrar u ocultar una columna Para establecer la hoja de cálculo de la visibilidad de una columna. Grupo / esquema de una columna Para agrupar / esquema de una columna. $objPHPExcel->getActiveSheet()->getRowDimension('10')->setVisible(false). puede utilizar el código siguiente: $objPHPExcel->getActiveSheet()->getColumnDimension('E')->setOutlineLevel(1).6. También puede contraer la columna.33. La primera línea muestra explícitamente la columna C. 4. $objPHPExcel->getActiveSheet()->getColumnDimension('D')->setVisible(false). Microsoft Office Excel no te presentamos esta medida. por lo tanto. 4. Tenga en cuenta que también debe establecer la columna invisible. El código siguiente agrega el resumen a la izquierda: $objPHPExcel->getActiveSheet()->setShowSummaryRight(false). $objPHPExcel->getActiveSheet()->getColumnDimension('C')->setVisible(true). puede utilizar el código siguiente.31.

He aquí un ejemplo que se desploma filas 50 a 80: for ($i = 51. para convertirse en una célula. Por lo tanto. $i. $objPHPExcel->getActiveSheet()->getRowDimension('5')->setCollapsed(true). $objPHPExcel->getActiveSheet()->getRowDimension('5')->setVisible(false). 4. $objPHPExcel->getActiveSheet()->getRowDimension($i)->setOutlineLevel(1)./images/officelogo. Esto se puede hacer mediante el siguiente código: $objPHPExcel->getActiveSheet()->mergeCells('A18:E22'). $i. $objDrawing->setPath('. "FName $i"). . "LName $i"). Combinar / unmerge celdas Si usted tiene un pedazo grande de datos que desea mostrar en una hoja de cálculo. $objPHPExcel->getActiveSheet()->getRowDimension($i)->setVisible(false).6. $objDrawing->setDescription('Logo'). $i. $i. o superior. $i. . 4. puede combinar dos o más células juntas. puede utilizar el código siguiente: $objPHPExcel->getActiveSheet()->getRowDimension('5')->setOutlineLevel(1). primero debe crear instancias de un PHPExcel_Worksheet_Drawing nueva. Inserción de filas / columnas Puede insertar o eliminar filas / columnas en una posición específica.jpg'). 4. Tenga en cuenta que también debe establecer la línea invisible. . $objDrawing->setName('Logo'). Extracción de una fusión se puede hacer usando el método unmergeCells: $objPHPExcel->getActiveSheet()->unmergeCells('A18:E22'). Puede indicar PHPExcel para añadir a continuación un resumen de las filas plegables (por defecto). } $objPHPExcel->getActiveSheet()->getRowDimension(81)->setCollapsed(true). También puede contraer la fila. true). El código siguiente agrega el resumen anterior: $objPHPExcel->getActiveSheet()->setShowSummaryBelow(false). justo antes de la fila 7: $objPHPExcel->getActiveSheet()->insertNewRowBefore(7. y ceder sus propiedades de un valor significativo: $objDrawing = new PHPExcel_Worksheet_Drawing(). PHPExcel Developer Documentation 38 .Para agrupar / esbozar una fila. Agregar un dibujo a una hoja de cálculo Un dibujo es siempre representado como un objeto independiente.6. . de lo contrario la caída no será visible en Excel 2007. $i <= 80. 2).34. que se puede agregar a una hoja de cálculo. $i++) { $objPHPExcel->getActiveSheet()->setCellValue('A' $objPHPExcel->getActiveSheet()->setCellValue('B' $objPHPExcel->getActiveSheet()->setCellValue('C' $objPHPExcel->getActiveSheet()->setCellValue('D' $objPHPExcel->getActiveSheet()->setCellValue('E' .35.36. El código siguiente inserta dos nuevas filas. "PhoneNo $i").6. "FaxNo $i").

$objDrawing->setPath('. $objRichText->createText('.$objDrawing->setHeight(36). $objPHPExcel>getActiveSheet(). $objPHPExcel->getActiveSheet()->getCell('A18')->setValue($objRichText). $objRichText = new PHPExcel_RichText(). $objRichText->createText('This invoice is '). $objDrawing->setCoordinates('B15'). PHPExcel crea el vínculo entre el dibujo y la hoja de cálculo: $objDrawing->setWorksheet($objPHPExcel->getActiveSheet()). // Definir rangos con nombre $objPHPExcel->addNamedRange( new PHPExcel_NamedRange('PersonFN'. Para añadir el logotipo de la hoja de cálculo. 'Balliauw'). '). $objDrawing->getShadow()->setDirection(45).6. $objPHPExcel->addNamedRange( new PHPExcel_NamedRange('PersonLN'.png')./images/paid. $objPayable->getFont()->setItalic(true).38. 'Lastname:'). $objDrawing->getShadow()->setVisible(true). 'Maarten').37.6. $objDrawing->setDescription('Paid'). $objPHPExcel>getActiveSheet(). 4. PHPExcel Developer Documentation 39 . He aquí un ejemplo. $objPayable->getFont()->setBold(true). que crea la rica cadena de texto siguiente: Esta factura se paga dentro de los treinta días siguientes al final del mes a menos que se especifique lo contrario en la factura. 'B1') ). $objPHPExcel->getActiveSheet()->setCellValue('A2'. $objDrawing->setOffsetX(110). Definir un rango con nombre HPExcel apoya la definición de los rangos con nombre. Puede establecer las propiedades de numerosas en un dibujo. Añadir texto enriquecido a una celda Adición de texto enriquecido a una célula se puede hacer uso de instancias PHPExcel_RichText. $objPayable = $objRichText->createTextRun('payable within thirty days after the end of the month'). utilice el siguiente fragmento de código. $objPHPExcel->getActiveSheet()->setCellValue('B1'. $objPHPExcel->getActiveSheet()->setCellValue('A1'. $objDrawing->setRotation(25). unless a menos que se especifique lo contrario en la factura. $objPHPExcel->getActiveSheet()->setCellValue('B2'. $objPayable->getFont()->setColor( new PHPExcel_Style_Color( PHPExcel_Style_Color::COLOR_DARKGREEN ) ). Estos se pueden definir mediante el siguiente código: // Agregar algunos datos $objPHPExcel->setActiveSheetIndex(0). aquí están algunos ejemplos: $objDrawing->setName('Paid'). 4. 'B2') ). 'Firstname:').

 Esto puede no ser segura para personas no autorizadas! Dependiendo de la configuración de su sistema operativo. el almacenamiento temporal puede ser leído por cualquier persona que utilice la carpeta de almacenamiento temporal misma.openxmlformatsofficedocument.39. rangos con nombre son globales por defecto. header('Content-Disposition: attachment.xls"'). se vuelve al sistema de archivos temporales de ubicación de la explotación. ?> PHPExcel Developer Documentation 40 . Cuando no hay acceso. header('Content-Disposition: attachment. De forma predeterminada.ms-excel').6. los archivos temporales se almacenan en el directorio de trabajo de guión. ?> Ejemplo de una secuencia de comandos redirigir un archivo Excel5 al cliente del navegador de la: <?php /* Aquí habrá algo de código donde se crea objPHPExcel */ // Redirigir la salida al navegador del cliente header('Content-Type: application/vnd. Redirigir la salida a la web del navegador de un cliente A veces. uno realmente quiere a la salida de un archivo en el navegador del cliente. Hay algunos pasos sencillos que puede seguir para hacer esto:  Crear la hoja de cálculo PHPExcel  Salida de cabeceras HTTP para el tipo de documento que desea a la salida  Utilice el PHPExcel_Writer_ de su elección. $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel. $objWriter->save('php://output'). $objWriter->save('php://output'). header('Cache-Control: max-age=0'). $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel.filename="myfile.filename="myfile.sheet'). HTTP headers Ejemplo de una secuencia de comandos redirigir un archivo de Excel 2007 para el navegador del cliente: <?php /* Aquí habrá algo de código donde se crea objPHPExcel */ // Redirigir la salida al navegador del cliente header('Content-Type: application/vnd. header('Cache-Control: max-age=0'). sólo se puede usar en la hoja de cálculo actual). 'Excel2007').Opcionalmente.xlsx"'). 4. 'Excel5'). y guardar en "php: // salida" PHPExcel_Writer_Excel2007 utiliza almacenamiento temporal cuando se escribe en php: // salida. When Cuando la confidencialidad de su documento es necesario. especialmente cuando la creación de hojas de cálculo sobre la marcha. un cuarto parámetro se puede pasar la definición del rango con nombre local (es decir.spreadsheetml. se recomienda no utilizar php: // salida.

4. Marco hoja de cálculo el nivel de zoom Para establecer el nivel de zoom de una hoja de cálculo. (Debido a que este cuenta como eco de la salida) lo mismo se aplica a todos los archivos incluidos • • No seguir estas normas puede resultar en archivos de Excel corruptos llegar al navegador del cliente. $textColor). 5. Ajuste del ancho de columna predeterminado ancho de columna predeterminado se puede configurar mediante el siguiente código: $objPHPExcel->getActiveSheet()->getDefaultColumnDimension()->setWidth(12). $objDrawing->setHeight(36). 255.6. $objDrawing->setImageResource($gdImage). 255. 4. 20) or die('Cannot Initialize new GD image stream').6. $objDrawing->setMimeType(PHPExcel_Worksheet_MemoryDrawing::MIMETYPE_DEFAULT). $objDrawing->setWorksheet($objPHPExcel->getActiveSheet()). PHPExcel Developer Documentation 41 . 4. $objDrawing->setDescription('Sample image'). imagestring($gdImage.40. 4. No debe haber espacios en blanco antes de la apertura <? Etiquetas php y más en un salto de línea después de la clausura?> Etiquetas (que también puede ser omitido para evitar problemas).42.43. 1.Precaución: • Asegúrese de no incluir ningún eco de las declaraciones o la salida de cualquier otro contenido que el archivo de Excel.6. 5. He aquí un ejemplo que genera una imagen en la memoria y lo agrega a la hoja de cálculo activa: // Generar una imagen $gdImage = @imagecreatetruecolor(120.41. $objDrawing>setRenderingFunction(PHPExcel_Worksheet_MemoryDrawing::RENDERING_JPEG). Ajuste de la altura de la fila por defecto de alto de fila predeterminado se puede configurar mediante el siguiente código: $objPHPExcel->getActiveSheet()->getDefaultRowDimension()->setRowHeight(15). Agregar un dibujo a una hoja de GD Podría haber una situación en la que desea generar una imagen de memoria en el uso de GD y agregarlo a una hoja de cálculo PHPExcel sin tener que guardar este archivo en una ubicación temporal.6. $objDrawing->setName('Sample image'). el siguiente código se puede utilizar: $objPHPExcel->getActiveSheet()->getSheetView()->setZoomScale(75). 'Created with PHPExcel'. Asegúrese de que la secuencia de comandos se guarda sin una lista de materiales (marca de orden de bytes). / / Añadir un dibujo de la hoja de cálculo $objDrawing = new PHPExcel_Worksheet_MemoryDrawing(). $textColor = imagecolorallocate($gdImage. y / o que los encabezados no se puede establecer por PHP (que resulta en mensajes de advertencia). 255).

46. El valor predeterminado es a la izquierda.6. A izquierda hoja de Derecho Hojas de cálculo se puede ajustar de forma individual si la columna "A" debe comenzar en el lado derecho o izquierdo. Cuando aprietas el botón de una hoja nueva se añade a la colección existente de las hojas del libro. Aquí está cómo configurar las columnas de derecha a izquierda. 4.400. 4.45.44. Hoja de color de ficha A veces se desea establecer un color de ficha de hoja. 4.6.Tenga en cuenta que el nivel de zoom debe estar en rango de 10 . Ocultos hojas de cálculo (hoja de estados) Establecer una hoja de cálculo que se oculta mediante este código: $objPHPExcel->getActiveSheet() ->setSheetState(PHPExcel_Worksheet::SHEETSTATE_HIDDEN). con Visual Basic Macro.6. La hoja de estados disponibles son: PHPExcel_Worksheet::SHEETSTATE_VISIBLE PHPExcel_Worksheet::SHEETSTATE_HIDDEN PHPExcel_Worksheet::SHEETSTATE_VERYHIDDEN En el estado de hoja de Excel "muy oculto" sólo se puede establecer mediante programación. Piense en createSheet () como la "hoja Insertar botón en Excel. // A la izquierda hoja de cálculo de la derecha $objPHPExcel->getActiveSheet() ->setRightToLeft(true). PHPExcel Developer Documentation 42 . Es posible que usted desea que la hoja de cálculo a ser "muy oculto". usted puede tener una ficha de hoja roja: $objWorksheet->getTabColor()->setRGB('FF0000').6.47. por ejemplo. $objWorksheet1->setTitle('Another sheet'). No es posible hacer una hoja visible a través de la interfaz de usuario. Por ejemplo. 4. Crear hojas de cálculo en un libro Si necesita crear más hojas del libro. aquí es cómo: $objWorksheet1 = $objPHPExcel->createSheet().

Una celda puede ser de un tipo de valor (que contiene un número o texto). Para el cálculo de una fórmula.. dos nuevas líneas de productos se añaden: $objPHPExcel->getActiveSheet()->insertNewRowBefore(7. se evalúa como el valor "64": Otra característica interesante de la fórmula analizador de PHPExcel. Si usted escribe la siguiente línea de código en la demo factura incluye con PHPExcel. Por ejemplo. PHPExcel Developer Documentation 43 . A10. Ahora. cuando escribo la siguiente línea de código.1. Realización de cálculos de la fórmula Usando el motor de cálculo PHPExcel Como PHPExcel representa una hoja de cálculo en la memoria. por ejemplo: $objPHPExcel->getActiveSheet()->getCell('E11')->getCalculatedValue(). o un tipo de fórmula (que contiene una fórmula que puede ser evaluado). 5. puede llamar a la celda que contiene la fórmula del método de la getCalculatedValue (). sino que también ofrece capacidades de cálculo de la fórmula.5. 2). A2. He aquí un ejemplo: Usted ve que la fórmula contenida en la celda E11 es "SUM (E4: E9)".. .. es que se puede ajustar automáticamente una fórmula para insertar / eliminar filas / columnas. la fórmula "= SUMA (A1: A10)" se evalúa como la suma de los valores en A1.

Esto también hace que el documento de Excel que se generan como con contenido ilegible. las celdas insertadas duplicar la información de estilo de la celda anterior. De referencia para este comportamiento en PHP:: http://be.types. 5. la fórmula "= 3 +" Hola ".php#language.conversion PHPExcel Developer Documentation 44 . La mayoría de ellos se deben al hecho de que una fórmula de Excel se convierte en código PHP antes de ser ejecutados.microsoft. ha cambiado a "SUM (E4: E11)". 5.microsoft.2.php.string.net/operators 5.¿Te diste cuenta? La fórmula en la celda E11 ex (ahora E13. Las fórmulas que se usan números y texto Las fórmulas que se usan números y el texto puede producir resultados inesperados e incluso el contenido del archivo ilegible. Por ejemplo.1.net/operators http://www. Due Debido al hecho de que PHP convierte "Hola" a un valor numérico (cero). ya que añade dos nuevas filas).php. La regla anterior no es lo que se encuentra utilizando el motor de cálculo se incluye con PHPExcel. Tenga en cuenta que ambos pueden insertar filas y columnas.net/manual/en/language.2. Esto significa que la fórmula de cálculo de Excel está sujeto a las características del lenguaje PHP.string.php. al igual que el comportamiento de Excel. Precedencia de Operadores En Excel '+' gana a '&'.com/kb/25189 http://support. como '*' gana poco más de '+' en el álgebra ordinaria.2.types.com/kb/25189 Petición de precedencia de operadores en PHP: http://www. Además. Limitaciones conocidas Hay algunas limitaciones conocidas para el motor de cálculo PHPExcel. Petición de precedencia de operadores en Excel: http://support." se espera que produzca un error en Excel (# ¡VALOR!).2. el resultado de esta fórmula se evalúa como 3 en lugar de evaluar como un error.

que son implementaciones de PHPExcel_Writer_IReader y PHPExcel_Writer_IWriter.xlsx").xlsx"). $objPHPExcel = $objReader->load("05featuredemo.1. Crear PHPExcel_Reader_IReader utilizando PHPExcel_IOFactory Hay dos métodos para la lectura de un archivo en PHPExcel: el uso de tipo de archivo automático de resolver o explícitamente. Tenga en cuenta que también puede utilizar la clase PHPExcel_IOFactory para hacer esto. Un uso típico de esta función es cuando se necesita para leer los archivos subidos por los usuarios. Si uno de ellos puede cargar el nombre de archivo especificado. Con este fin. Puede crear una instancia de PHPExcel_Reader_IReader utilizando PHPExcel_IOFactory en el tipo de archivo automático de resolver el modo de utilizar el ejemplo de código: $objPHPExcel = PHPExcel_IOFactory::load("05featuredemo. para leer sólo los datos. PHPExcel ofrece a los lectores y escritores.6. modo explícito requiere que se especifique que PHPExcel_Reader_IReader debe ser utilizado. 6. Los lectores y escritores . PHPExcel_IOFactory La API PHPExcel ofrece varios métodos para crear una instancia o PHPExcel_Writer_IWriter PHPExcel_Writer_IReader: • • Creación directa de A través de PHPExcel_IOFactory Todos los ejemplos debajo de demostrar el método de la creación directa. y no sé si se está cargando xls o xlsx. la lectura y la escritura a un persiste almacenamiento no es posible utilizando la base de clases PHPExcel. PHPExcel Developer Documentation 45 .1. $objReader->load("05featuredemo.xlsx").xlsx"). Si es necesario establecer algunas propiedades en el lector (por ejemplo. entonces en vez que desee utilizar esta variante: $objReader = PHPExcel_IOFactory::createReaderForFile("05featuredemo.1. Lectura y escritura de archivos Como ustedes ya saben de la parte 3. Puede crear una instancia de PHPExcel_Reader_IReader utilizando PHPExcel_IOFactory en modo explícito con el siguiente ejemplo de código: $objReader = PHPExcel_IOFactory::createReader("Excel2007"). 6. tipo de archivo automático de la resolución de los diferentes controles PHPExcel_Reader_IReader distribuido con PHPExcel. ver más sobre esto más adelante). el archivo se carga con que PHPExcel_Reader_IReader.3 Readers and writers . $objReader->setReadDataOnly(true).

$objReader->setLoadSheetsOnly( array("Sheet 1". para instruir al lector para cargar sólo las hojas con un nombre que se da: $objReader = new PHPExcel_Reader_Excel2007(). Crear PHPExcel_Writer_IWriter utilizando PHPExcel_IOFactory Puede crear una instancia de PHPExcel_Writer_Iwriter utilizando PHPExcel_IOFactory: $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel.2. PHPExcel_Reader_Excel2007 Lectura de una hoja de cálculo Usted puede leer un código de xlsx. .. $objPHPExcel = $objReader->load("05featuredemo.2. $objPHPExcel = $objReader->load("05featuredemo. 6. 6.xlsx"). $objWriter->save("05featuredemo. $objReader->setReadDataOnly(true). $objPHPExcel = $objReader->load("05featuredemo.1.xlsx"). Permite la salida de la hoja de cálculo en la memoria a un archivo xlsx. todas las celdas se leen utilizando la PHPExcel_Reader_DefaultReadFilter.. específicas de las hojas de sólo lectura Puede configurar la opción setLoadSheetsOnly en el lector. "Excel2007"). Excel 2007 (SpreadsheetML) formato de archivo Excel2007 formato de archivo es el formato de archivo principal de PHPExcel. la validación de datos. Archivo con lo siguiente: $objReader = new PHPExcel_Reader_Excel2007().2. los datos de sólo lectura Puede configurar la opción setReadDataOnly en el lector.1.xlsx"). 6. para instruir al lector para cargar sólo las celdas que coinciden con una regla dada. Tenga en cuenta que el modo automático de tipo de resolución es ligeramente más lento que el modo explícito.. Una lectura del filtro puede ser cualquier clase que implementa PHPExcel_Reader_IReadFilter. Por defecto. El siguiente código sólo leerá la fila 1 y las filas 20 a 30 de cualquier hoja en el archivo de Excel: PHPExcel Developer Documentation 46 . y acaba de leer datos de la celda: $objReader = new PHPExcel_Reader_Excel2007().xlsx"). para instruir al lector a pasar por alto el estilo. específicas de las células de sólo lectura Puede establecer la opción setReadFilter en el lector. "My special sheet") ).

Es básicamente una versión modificada de PERA Spreadsheet_Excel_Writer .class MyReadFilter implements PHPExcel_Reader_IReadFilter { public function readCell($column. Esta opción deshabilita varias opciones de formato de archivo Office2007. y tal vez no deseados. Paquete de compatibilidad de Office 2003 Debido a un bug en el paquete de compatibilidad Office2003.2. y tiene las mismas limitaciones y características como la biblioteca PEAR. resultando en una baja de funciones Office2007 hoja de cálculo cuando se utiliza esta opción. $objWriter->save("05featuredemo. $objReader->setReadFilter( new MyReadFilter() ). puede haber algunos pequeños problemas al abrir excel2007 hojas de cálculo (en su mayoría relacionados con cálculo de la fórmula). Puede desactivar la fórmula sin embargo antes de cálculo: $objWriter = new PHPExcel_Writer_Excel2007($objPHPExcel).  compatibilidad Office2003 sólo debe utilizarse cuando sea necesario opción de compatibilidad Office2003 sólo debe utilizarse cuando sea necesario.2. } return false. $objWriter->setOffice2003Compatibility(true). Formula pre-calculation De forma predeterminada. Puede permitir la compatibilidad Office2003 con el siguiente código: $objWriter = new PHPExcel_Writer_Excel2007($objPHPExcel).xlsx"). xlsx y. $objWriter->setPreCalculateFormulas(false). $objPHPExcel = $objReader->load("06largescale. PHPExcel Developer Documentation 47 .3.xlsx"). implementado en PHPExcel para proporcionar de manera uniforme para crear ambos. 6.xlsx").xlsx"). Excel 5 (BIFF) formato de archivo archivo en formato Excel5 es el antiguo archivo en formato Excel. $objWriter->save("05featuredemo. este escritor pre-calcula todas las fórmulas de la hoja de cálculo. 6. $worksheetName = '') { // Read title row and rows 20 . PHPExcel_Writer_Excel2007 Escribir una hoja de cálculo Usted puede escribir un código xlsx.30 if ($row == 1 || ($row >= 20 && $row <= 30)) { return true. Archivo con lo siguiente: $objWriter = new PHPExcel_Writer_Excel2007($objPHPExcel). } } $objReader = new PHPExcel_Reader_Excel2007(). $row. xls. Esto puede ser lento en grandes hojas de cálculo. $objWriter->save("05featuredemo. incluso.

la validación de datos. los datos de sólo lectura Puede configurar la opción setReadDataOnly en el lector. específicas de las hojas de sólo lectura Puede configurar la opción setLoadSheetsOnly en el lector. para instruir al lector para cargar sólo las celdas que coinciden con una regla dada.xls").3.30 if ($row == 1 || ($row >= 20 && $row <= 30)) { return true. específicas de las células de sólo lectura Puede establecer la opción setReadFilter en el lector. archivo en formato Excel5 no se desarrollará más lejos. Por defecto. El siguiente código sólo leerá la fila 1 y las filas 20 a 30 de cualquier hoja en el archivo de Excel: class MyReadFilter implements PHPExcel_Reader_IReadFilter { public function readCell($column. $worksheetName = '') { // Read title row and rows 20 .Excel5 file format will not be developed any further. $objReader->setLoadSheetsOnly( array("Sheet 1".. } return false. $objPHPExcel = $objReader->load("05featuredemo.  Excel5 (BIFF) limitations Excel5 (BIFF) limitaciones Tenga en cuenta que archivo en formato BIFF. "My special sheet") ).xls"). } PHPExcel Developer Documentation 48 .. $objPHPExcel = $objReader->load("05featuredemo.xls"). tiene algunos límites en cuanto a las células de estilo y manejo de grandes hojas de cálculo a través de PHP. y acaba de leer datos de la celda: $objReader = new PHPExcel_Reader_Excel5().1. Xls con lo siguiente: $objReader = new PHPExcel_Reader_Excel5(). para instruir al lector para cargar sólo las hojas con un nombre que se da: $objReader = new PHPExcel_Reader_Excel5(). $row. PHPExcel_Reader_Excel5 Lectura de una hoja de cálculo Usted puede leer el código. todas las celdas se leen utilizando la PHPExcel_Reader_DefaultReadFilter. 6. sólo proporciona un formato de archivo adicionales para PHPExcel. para instruir al lector a pasar por alto el estilo. $objReader->setReadDataOnly(true). . Una lectura del filtro puede ser cualquier clase que implementa PHPExcel_Reader_IReadFilter. $objPHPExcel = $objReader->load("05featuredemo. it just provides an additional file format for PHPExcel.

6. específicas de las células de sólo lectura Puede establecer la opción setReadFilter en el lector. $objPHPExcel = $objReader->load("05featuredemo.4. $worksheetName = '') { // Read title row and rows 20 .} $objReader = new PHPExcel_Reader_Excel5(). } PHPExcel Developer Documentation 49 . PHPExcel_Reader_Excel2003XML Lectura de una hoja de cálculo Usted puede leer el código XML.  Excel 2003 XML limitaciones Tenga en cuenta que Excel 2003 en formato XML tiene algunas limitaciones con respecto a las células de estilo y manejo de grandes hojas de cálculo a través de PHP. Xls con lo siguiente: $objWriter = new PHPExcel_Writer_Excel5($objPHPExcel). 6. todas las celdas se leen utilizando la PHPExcel_Reader_DefaultReadFilter. Por defecto.2.1.3. 6. PHPExcel_Writer_Excel5 Escribir una hoja de cálculo Usted puede escribir un código.4. Excel 2003 Formato de archivo XML Excel 2003 formato de archivo XML es un formato de archivo que puede ser utilizado en las versiones anteriores de Microsoft Excel. $objWriter->save("05featuredemo. Archivo con lo siguiente: $objReader = new PHPExcel_Reader_Excel2003XML().xml"). $objPHPExcel = $objReader->load("06largescale. $objReader->setReadFilter( new MyReadFilter() ). El siguiente código sólo leerá la fila 1 y las filas 20 a 30 de cualquier hoja en el archivo de Excel: class MyReadFilter implements PHPExcel_Reader_IReadFilter { public function readCell($column. } return false. para instruir al lector para cargar sólo las celdas que coinciden con una regla dada.xls").xls").30 if ($row == 1 || ($row >= 20 && $row <= 30)) { return true. $row. Una lectura del filtro puede ser cualquier clase que implementa PHPExcel_Reader_IReadFilter.

PHPExcel Developer Documentation 50 .5. todas las celdas se leen utilizando la PHPExcel_Reader_DefaultReadFilter. El siguiente código sólo leerá la fila 1 y las filas 20 a 30 de cualquier hoja en el archivo SYLK: class MyReadFilter implements PHPExcel_Reader_IReadFilter { public function readCell($column. 6. $row.slk"). para instruir al lector para cargar sólo las celdas que coinciden con una regla dada. Por defecto. } return false. $objPHPExcel = $objReader->load("05featuredemo.} $objReader = new PHPExcel_Reader_Excel2003XML(). $objPHPExcel = $objReader->load("06largescale.30 if ($row == 1 || ($row >= 20 && $row <= 30)) { return true. } } $objReader = new PHPExcel_Reader_SYLK(). 6. 6. Enlace simbólico (SYLK) Enlace simbólico (SYLK) es un formato de archivo de Microsoft suele utilizar para el intercambio de datos entre aplicaciones. PHPExcel allows reading and writing to CSV files.6. $objReader->setReadFilter( new MyReadFilter() ). Compuesto por ANSI caracteres que pueden visualizarse solamente. CSV (valores separados por comas) CSV (valores separados por comas) se utilizan a menudo como una importación / formato de archivo de exportación con otros sistemas. específicas de las células de sólo lectura Puede establecer la opción setReadFilter en el lector. Una lectura del filtro puede ser cualquier clase que implementa PHPExcel_Reader_IReadFilter.slk"). $worksheetName = '') { // Read title row and rows 20 . PHPExcel_Reader_SYLK Lectura de una hoja de cálculo Usted puede leer un código de slk. PHPExcel permite leer y escribir en archivos CSV. como bases de datos. Archivo con lo siguiente: $objReader = new PHPExcel_Reader_SYLK(). $objReader->setReadFilter( new MyReadFilter() ).  SYLK limitaciones Tenga en cuenta que archivo en formato SYLK tiene algunos límites en cuanto a las células de estilo y manejo de grandes hojas de cálculo a través de PHP.1. que puede ser fácilmente creados y procesados por otras aplicaciones. $objPHPExcel = $objReader->load("06largescale.5.xml"). especialmente las hojas de cálculo.

$objReader->setLineEnding("\r\n"). puede especificar que la hoja para leer desde CSV: $objReader->setSheetIndex(0).1. y las importaciones en la hoja 6 º: $objReader = new PHPExcel_Reader_CSV(). CSV limitaciones Tenga en cuenta que archivo en formato CSV tiene algunos límites en cuanto a las células de estilo. PHPExcel_Reader_CSV Lectura de un archivo CSV Usted puede leer un código.csv"). El siguiente código carga un archivo CSV en dólares actuales objPHPExcel contiene algunas hojas. puede ocurrir que desea importar datos CSV en un objeto existente PHPExcel.) como separador. Puede indicar PHPExcel_Reader_CSV algunas opciones antes de leer un archivo CSV.6. $objReader->loadIntoExisting("05featuredemo. Leer una hoja de cálculo específica archivos CSV sólo puede contener una hoja de cálculo. $objReader->setDelimiter('. $objReader->setInputEncoding('CP1252'). Marco CSV opciones A menudo.. $objPHPExcel = $objReader->load("sample. $objPHPExcel). $objReader->setDelimiter('.csv"). $objReader->setEnclosure(''). $objPHPExcel = $objReader->load("sample. los archivos CSV no son realmente "separados por comas". . 6. $objReader->setEnclosure(''). $objReader->setLineEnding("\r\n"). Asegúrese siempre de que la codificación de entrada de un valor apropiado. o punto y coma uso (. Tenga en cuenta que PHPExcel_Reader_CSV por defecto asume que la carga del archivo CSV es codificación UTF-8.. $objReader = new PHPExcel_Reader_CSV(). formato de número.'). Csv archivo con lo siguiente: $objReader = new PHPExcel_Reader_CSV(). Lea en la hoja de cálculo existentes Cuando se trabaja con archivos CSV. $objReader->setSheetIndex(0). Si usted está leyendo archivos CSV que fueron creados en Microsoft Office Excel la codificación de entrada correcta y no puede ser Windows-1252 (CP1252). PHPExcel Developer Documentation 51 .csv". Por lo tanto.'). $objReader->setSheetIndex(5).

Esto puede ser lento en grandes hojas de cálculo. Pero para evitar problemas se recomienda fijar los caracteres de forma explícita como se muestra a continuación. $objWriter->setEnclosure(''). Escribir una hoja de cálculo específica archivos CSV sólo puede contener una hoja de cálculo.csv"). puede especificar qué hoja para escribir a un archivo CSV: $objWriter->setSheetIndex(0). Decimal y separadores de miles Si la hoja de cálculo que está exportando contiene números con separadores de miles o decimales. Marco CSV opciones A menudo. Archivo con lo siguiente: $objWriter = new PHPExcel_Writer_CSV($objPHPExcel).csv"). De forma predeterminada PHPExcel busca en la configuración regional de la configuración del servidor para decidir qué caracteres a usar. PHPExcel Developer Documentation 52 . $objWriter->setPreCalculateFormulas(false). $objWriter->setLineEnding("\r\n").csv"). Escribir UTF-8 archivos CSV Un archivo CSV se pueden marcar como UTF-8 por escribir un encabezado del archivo de lista de materiales. $objWriter->setDelimiter('. Esto se puede activar mediante el siguiente código: $objWriter = new PHPExcel_Writer_CSV($objPHPExcel). Por lo tanto. este escritor pre-calcula todas las fórmulas de la hoja de cálculo. Puede desactivar la fórmula sin embargo antes de cálculo: $objWriter = new PHPExcel_Writer_CSV($objPHPExcel). $objWriter->save("05featuredemo. Puede indicar PHPExcel_Writer_CSV algunas opciones antes de escribir un archivo CSV: $objWriter = new PHPExcel_Writer_CSV($objPHPExcel).6. los archivos CSV no son realmente "separados por comas".) como separador.'). incluso. Fórmula pre-cálculo De forma predeterminada. entonces debería pensar en lo que los caracteres que desea utilizar para los que antes de realizar la exportación. $objWriter->setSheetIndex(0). $objWriter->save("05featuredemo. $objWriter->save("05featuredemo. $objWriter->setUseBOM(true).csv").6. $objWriter->save("05featuredemo. y tal vez no deseados. PHPExcel_Writer_CSV Creación de un archivo CSV Usted puede escribir un código csv.2. o punto y coma uso (.

Por ejemplo.'). Escribir una hoja de cálculo Usted puede escribir un código htm. utilice el siguiente código: $objWriter->writeAllSheets().7. Si desea escribir todas las hojas en un único archivo HTML. height: 78px. usuarios alemanes querrán utilizar los valores opuestos.com/ / logotipo .  HTML limitaciones Tenga en cuenta que archivo en formato HTML tiene ciertos límites con respecto a las células de estilo. puede especificar qué hoja de escribir en HTML: $objWriter->setSheetIndex(0). Escribir una hoja de cálculo específica Los archivos HTML pueden contener una o más hojas de cálculo. require_once 'PHPExcel/Shared/String. .. $objWriter->save("05featuredemo. uno podría querer ver el estilo <img = "position: relative. PHPExcel_Writer_HTML  Tenga en cuenta que sólo PHPExcel_Writer_HTML salir la primera hoja de cálculo de forma predeterminada.1. Esto también afecta la forma en HTML y PDF se exporta. 6. izquierda: 0px.7. Archivo con lo siguiente: $objWriter = new PHPExcel_Writer_HTML($objPHPExcel). Marco de las imágenes raíz del archivo HTML Puede haber situaciones en las que desea establecer explícitamente las imágenes raíz incluida.php' PHPExcel_Shared_String::setDecimalSeparator('.').'). PHPExcel_Shared_String::setThousandsSeparator('. top: 0px. Por lo tanto. PHPExcel_Shared_String::setThousandsSeparator('.htm"). 6.php' PHPExcel_Shared_String::setDecimalSeparator('.Usuarios Inglés tendrá que usar esto antes de hacer la exportación: require_once 'PHPExcel/Shared/String.domain.')." src = "imágenes http://www. Escribe todas las hojas Los archivos HTML pueden contener una o más hojas de cálculo. ancho: 140px. formato de número.. jpg "border =" 0 "> en lugar de estilo PHPExcel Developer Documentation 53 . Tenga en cuenta que el código anterior establece y mil separadores decimales como opciones globales. HTML PHPExcel le permite escribir una hoja de cálculo en formato HTML. para la representación rápida de los datos en ella a cualquier persona que no tiene una hoja de cálculo en su PC.

echo $objWriter->generateHTMLFooter(). Usted puede utilizar el código siguiente para lograr este resultado: $objWriter->setImagesRoot('http://www. font-size: 9pt. 78px / images / logo. izquierda: 0px.com'). } <?php echo $objWriter->generateStyles(false). ancho: 140px. $objWriter->setPreCalculateFormulas(false).<img =" position: relative. top: 0px. Incrustación de código HTML generado en una página web Podría haber una situación en la que desea incrustar el código HTML generado en un sitio web existente. que permite el uso de estas piezas en su sitio web.jpg "border = "0">.htm").example. Puede desactivar la fórmula sin embargo antes de cálculo: $objWriter = new PHPExcel_Writer_HTML($objPHPExcel). background-color: white. echo $objWriter->generateHTMLHeader(). // do not write <style> and </style> ?> --> </style> <?php echo $objWriter->generateSheetData(). PHPExcel_Writer_HTML proporciona apoyo para generar sólo las partes específicas del código HTML. este escritor pre-calcula todas las fórmulas de la hoja de cálculoEsto puede ser lento en grandes hojas de cálculo. incluso. $objWriter->save("05featuredemo. altura:. ?> PHPExcel Developer Documentation 54 . ?> <style> <!-html { font-family: Times New Roman. Supported methods: métodos compatibles: • • • • generateHTMLHeader() generateStyles() generateSheetData() generateHTMLFooter() He aquí un ejemplo que recupera todas las partes de forma independiente y los combina en una página HTML resultante: <?php $objWriter = new PHPExcel_Writer_HTML($objPHPExcel). Formula pre-calculation De forma predeterminada. "src =". y tal vez no deseados.

Por lo tanto. utilice el siguiente código: $objWriter->writeAllSheets().1. $objWriter->save("05featuredemo. .  PDF limitaciones Tenga en cuenta que archivo en formato PDF tiene algunas limitaciones con respecto a las células de estilo. Decimal y separadores de miles Vea la sección PHPExcel_Writer_CSV cómo controlar la aparición de estos. puede especificar qué hoja para escribir en PDF: $objWriter->setSheetIndex(0). PHPExcel_Writer_PDF  Tenga en cuenta que sólo PHPExcel_Writer_PDF salir la primera hoja de cálculo de forma predeterminada. y tal vez no deseados. 6. Escribir una hoja de cálculo específica Los archivos PDF pueden contener una o más hojas de cálculo. $objWriter->setUseBOM(true). $objWriter->save("05featuredemo... Escribir una hoja de cálculo Usted puede escribir un código pdf. Esto puede ser lento en grandes hojas de cálculo.8. para la distribución rápida de los datos representados. PDF PHPExcel le permite escribir una hoja de cálculo en formato PDF. este escritor pre-calcula todas las fórmulas de la hoja de cálculo.htm").pdf"). Formula pre-calculation De forma predeterminada.Escribir UTF-8 archivos HTML Un archivo HTML se pueden marcar como UTF-8 por escribir un encabezado del archivo de lista de materiales. Escribe todas las hojas Los archivos PDF pueden contener una o más hojas de cálculo. 6. Si desea escribir todas las hojas en un único archivo PDF. Archivo con lo siguiente: $objWriter = new PHPExcel_Writer_PDF($objPHPExcel). Esto se puede activar mediante el siguiente código: $objWriter = new PHPExcel_Writer_HTML($objPHPExcel).8. formato de número. incluso Puede desactivar la fórmula sin embargo antes de cálculo: PHPExcel Developer Documentation 55 .

Esto requiere menos esfuerzo de codificación que generar el archivo de Excel desde cero. Tenga en cuenta que se puede cargar un archivo xlsx y generar un archivo xls.codeplex. encabezados. headers etc. 4.xlsx'). Por favor.com/PHPExcel/Wiki/View.codeplex. $objWorksheet->getCell('A2')->setValue('Smith'). modificar y escribir) Los lectores y los escritores son las herramientas que le permiten generar archivos de Excel a partir de plantillas. $objWriter->setPreCalculateFormulas(false). Decimal y separadores de miles Vea la sección PHPExcel_Writer_CSV cómo controlar la aparición de estos.com/PHPExcel/Wiki/View.9.aspx?title=Credits&referringTitle=Home para actualizar la fecha de créditos. Generación de archivos de Excel a partir de plantillas (leer. This requires less coding effort than generating the Excel file from scratch. $objWorksheet = $objPHPexcel->getActiveSheet(). $objWriter->save('write. 6. especially if your template has many styles. $objWriter->save("05featuredemo.xls'). $objWorksheet->getCell('A1')->setValue('John').aspx? title=Credits&referringTitle=Home for up-to-date credits. PHPExcel Developer Documentation 56 . etc He aquí un ejemplo de cómo abrir un archivo de plantilla. $objWriter = PHPExcel_IOFactory::createWriter($objPHPexcel. rellenar un par de campos y guardarlo de nuevo: $objPHPexcel = PHPExcel_IOFactory::load('template. las propiedades de configuración de página. sobre todo si la plantilla tiene muchos estilos.pdf"). Créditos Please refer to the internet page http://www. consulte la página de Internet http://www. 'Excel5'). page setup properties.$objWriter = new PHPExcel_Writer_PDF($objPHPExcel).

Créditos Por favor.codeplex. consulte la página de Internet http://www.com/PHPExcel/Wiki/View.7.aspx? title=Credits&referringTitle=Home para actualizar la fecha de créditos. PHPExcel Developer Documentation 57 .

Appendix A: Claves válidas de matriz de applyFromArray para estilo () En la tabla siguiente se muestran las claves de matriz válida para applyFromArray PHPExcel_Style () clases. Si el "mapa de la propiedad" columna se asigna una clave a una incubadora. el valor proporcionado para esa clave se aplicará como un conjunto de estilo. PHPExcel_Style Array key: fill font borders alignment numberformat protection PHPExcel_Style_Fill Array key: type rotation startcolor endcolor color PHPExcel_Style_Font Array key: name bold italic underline strike color size superScript subScript PHPExcel_Style_Borders Array key: allborders left right top bottom diagonal vertical horizontal diagonaldirection outline PHPExcel_Style_Border Array key: style color Maps to property: getFill() getFont() getBorders() getAlignment() getNumberFormat() getProtection() Maps to property: setFillType() setRotation() getStartColor() getEndColor() getStartColor() Maps to property: setName() setBold() setItalic() setUnderline() setStrikethrough() getColor() setSize() setSuperScript() setSubScript() Maps to property: getLeft(). el valor proporcionado para esa clave se puede aplicar directamente. getBottom() getLeft() getRight() getTop() getBottom() getDiagonal() getVertical() getHorizontal() setDiagonalDirection() setOutline() Maps to property: setBorderStyle() getColor() PHPExcel Developer Documentation 58 . getRight(). getTop(). Si el "mapa de la propiedad" columna se asigna una clave a un comprador.

PHPExcel_Style_Alignment Array key: horizontal vertical rotation wrap shrinkToFit indent PHPExcel_Style_NumberFormat Array key: code PHPExcel_Style_Protection Array key: locked hidden Maps to property: setHorizontal() setVertical() setTextRotation() setWrapText() setShrinkToFit() setIndent() Maps to property: setFormatCode() Maps to property: setLocked() setHidden() PHPExcel Developer Documentation 59 .

Sign up to vote on this title
UsefulNot useful