Задание цвета текста:
Цвет текста задается при помощи свойства ColorIndex() все того же объекта Font().
<?php$xls = new COM("Excel.Application"); // Создаем новый COM-объект$xls->Application->Visible = 1; // Заставляем его отобразиться$xls->Workbooks->Add(); // Добавляем новый документ $range = $xls->Range("A1");$range->Value = "Текст будет написан красным";$range->Font->ColorIndex = 3;?>
Есть одна особенность: цвет текста задается не в каком-либо формате (RGB, CMYK и т.д.), а номером, под которым он находится в палитре Excel-а.
Всего в палитре присутствует 55 цветов и одно значение отводиться под автоцвет. Итого при помощи свойства ColorIndex() можно задать 56 значений цвета.
Следующий пример выведет в документе Excel все возможные значения свойства ColorIndex():
<?php$xls = new COM("Excel.Application"); // Создаем новый COM-объект$xls->Application->Visible = 1; // Заставляем его отобразиться$xls->Workbooks->Add(); // Добавляем новый документ $min_color_index=0; // Начальный индекс цвета$max_color_index=55; // Конечный индекс цвета$start_position=2; // Номер позиции, с которой начнется показ // индексов цвета// Выводим надпись "Номер цвета"$range = $xls->Range("A1:B1");$range->Font->Bold = true;$range = $xls->Range("A1");$range->Value = "Номера цветов"; // Выводим значения индексов цвета и окрашиваем эти значения// соответствующим цветомfor($i=$min_color_index;$i<=$max_color_index;$i++) { $range = $xls->Range("A".($i+$start_position)); $range->Value = "ColorIndex = ".$i; $range->Font->ColorIndex = $i;};?>