2011-08-03 17 views
5

Estoy tratando de establecer el color para una palabra específica en una celda utilizando Spreadsheet_Excel_Writer pero no encontré ninguna manera en el documentation.Establezca el color de una palabra específica en una celda de Excel utilizando Spreadsheet Excel Writer php

Tengo que establecer el color rojo para la primera palabra de una celda, pero no para todo el texto en ella.

¿Hay alguna manera de hacer esto con Spreadsheet_Excel_Writer?

+9

No creo que Spreadsheet_Excel_Writer puede hacer eso como recuerdo de leer el código fuente y que operan en el nivel celular. Creo que deberías probar http://phpexcel.codeplex.com/ - es compatible con texto enriquecido. – XzKto

+0

@Xzkto: Gracias, creo que esto no se puede lograr usando Spreadsheet_Excel_Writer. Intentará con cualquier cosa –

+0

Otra posibilidad poco clara sería colorear dos celdas por separado y fusionarlas, si eso mantiene sus colores originales. –

Respuesta

1

La especificación XMLSS le permite usar etiquetas, que puede usar para cambiar el color de la fuente. Ver http://msdn.microsoft.com/en-us/library/aa140066(v=office.10).aspx#odc_xmlss_ss:data

Spreadsheet_Excel_Writer no funcionará para usted en este caso; sin embargo, si desea guardar el documento como XML, puede envolver su primera palabra en una etiqueta de fuente como en el ejemplo siguiente.

<?xml version="1.0" encoding="UTF-8"?> 
<?mso-application progid="Excel.Sheet"?> 
<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" xmlns:c="urn:schemas-microsoft-com:office:component:spreadsheet" xmlns:html="http://www.w3.org/TR/REC-html40" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" xmlns:x2="http://schemas.microsoft.com/office/excel/2003/xml" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> 
<ss:Worksheet ss:Name="Sheet1"> 
    <Table> 
    <Column/> 
    <Row> 
    <Cell> 
    <ss:Data xmlns="http://www.w3.org/TR/REC-html40" ss:Type="String"> 
     <Font html:Color="#00ff00">green</Font> 
     <Font html:Size="48" html:Color="#ff0000">red</Font> 
     <Font html:Color="#0000ff">blue</Font> 
    </ss:Data> 
    </Cell> 
    </Row> 
    </Table> 
</ss:Worksheet> 
</Workbook> 

Simplemente tenga en cuenta que esto es XML, no HTML, por lo que debe estar bien formado.

0

puede configurar el color en cualquier fila o columna mediante el uso de CSS en línea como style = "background"

Cuestiones relacionadas