Советы по PHP : Из PHP в Excel: работа с COM-объектами : Формат ячеек: Выравнивание

смотрим также

Материал из Справочник Web-языков

Перейти к: навигация, поиск


В Excel при помощи PHP можно делать выравнивание данных, находящихся в ячейках как по вертикали, так и по горизонтали.

Содержание

Общие возможности

Доступны следующие действия:

Изображение: Icon_excel_null.gif выравнивание по значению;
Изображение: Icon_excel_align_left.gif выравнивание по левому краю;
Изображение: Icon_excel_align_center.gif выравнивание по центру;
Изображение: Icon_excel_align_right.gif выравнивание по правому краю;
Изображение: Icon_excel_null.gif выравнивание с заполнением;
Изображение: Icon_excel_align_width.gif выравнивание по ширине;
Изображение: Icon_excel_null.gif распределение по центру выделения;
Изображение: Icon_xcel_align_width_set.gif распределение по горизонтали;
Изображение: Icon_excel_valign_top.gif выравнивание по верхнему краю;
Изображение: Icon_excel_valign_center.gif центрирование по вертикали;
Изображение: Icon_excel_valign_bottom.gif выравнивание по нижнему краю;
Изображение: Icon_excel_null.gif выравнивание по высоте;
Изображение: Icon_excel_valign_height.gif распределение по вертикали;
Изображение: Icon_excel_indentlevel_1.gif Изображение: Icon_excel_indentlevel_2.gif задание отступа в ячейке.

Выравнивание по горизонтали

За выравнивание по горизонтали отвечает свойство HorizontalAlignment().

Выровнять значение можно как в одной ячейке, так и в диапазоне ячеек. Для этого надо выделить ячейку (или диапазон ячеек), и присвоить свойству HorizontalAlignment() одно из 8 предопределенных значений:

HorizontalAlignment = 1
- выравнивание по значению (используется по умолчанию);
HorizontalAlignment = 2
- выравнивание по левому краю;
HorizontalAlignment = 3
- выравнивание по центру;
HorizontalAlignment = 4
- выравнивание по правому краю;
HorizontalAlignment = 5
- выравнивание с заполнением;
HorizontalAlignment = 6
- выравнивание по ширине;
HorizontalAlignment = 7
- выравнивание по центру выделения;
HorizontalAlignment = 8
- распределение по горизонтали.

В приведенном ниже примере в верхней строчке таблицы "1:1" все значения будут выравниваться по центру.

<?php
$xls = new COM("Excel.Application"); // Создаем новый COM-объект
$xls->Application->Visible = 1;      // Заставляем его отобразиться
$xls->Workbooks->Add();              // Добавляем новый документ

// Выравниваем по центру
$rangeAlignment = $xls->Range("1:1");
$rangeAlignmeny->HorizontalAlignment = 3;
$rangeAlignment->Value = "Hello";
?>

Выравнивание по вертикали

За выравнивание по вертикали отвечает свойство VerticalAlignment().

Так же как и по горизонтали, выровнять значение можно как в одной ячейке, так и в диапазоне ячеек. Для этого надо выделить ячейку (или диапазон ячеек), и присвоить свойству VerticalAlignment() одно из 5 предопределенных значений:

VerticalAlignment = 1
- выравнивание по верхнему краю;
VerticalAlignment = 2
- выравнивание по центру;
VerticalAlignment = 3
- выравнивание по нижнему краю (значение по умолчанию);
VerticalAlignment = 4
- выравнивание по высоте;
VerticalAlignment = 5
- распределение по вертикали.

В приведенном ниже примере в верхней строчке таблицы "1:1" все значения будут выравниваться по верхнему краю.

<?php
$xls = new COM("Excel.Application"); // Создаем новый COM-объект
$xls->Application->Visible = 1;      // Заставляем его отобразиться
$xls->Workbooks->Add();              // Добавляем новый документ

// Выравниваем по центру
$rangeAlignment = $xls->Range("1:1");
// Задаем выравнивание для ячеек: по верхнему краю
$rangeAlignment->VerticalAlignment = 1;
// Устанавливаем размер шрифта: 8
$rangeAlignment->Font->Size = 8;
// Устанавливаем высоту строки: 25
$rangeAlignment->RowHeight = 25;
// Выводим надпись: Hello
$rangeAlignment->Value = "Hello";
?>

Задание отступа

Отступ в ячейке задается при помощи свойства IndentLevel().

Этому свойству приравнивают значение, равное количеству знаков, на которые нужно сместить данные влево.

В следующем примере мы в ячейку A1 запишем текст с отступом в 5 знаков, а в ячейку A2 - без отступа:

<?php
$xls = new COM("Excel.Application"); // Создаем новый COM-объект
$xls->Application->Visible = 1;      // Заставляем его отобразиться
$xls->Workbooks->Add();              // Добавляем новый документ

// Задание отступа
$rangeAlignment = $xls->Range("A1");
$rangeAlignment->IndentLevel = 5;
$rangeAlignment->Value = "Отступ равен 5 символам";

// Без отступа
$rangeAlignment = $xls->Range("A2");
$rangeAlignment->Value = "Без отступа";
?>
Добавить страницу в закладки:
РАЗРЕШАЕТСЯ перепечатывать и копировать информацию ТОЛЬКО ПРИ РАЗМЕЩЕНИИ ссылки на оригинал!
(<A href="https://www.spravkaweb.ru/">Справочник Web-языков</A>)
другие проекты
Rambler\'s Top100 Индекс цитирования