Из PHP в Excel: работа с COM-объектами : Копирование / вставка ячеек
В Excel при помощи PHP можно копировать ячейки и вставлять ранее скопированные ячейки.Общие возможности:
копирование ячеек; | |
вставка скопированных ячеек; | |
перемещение ячеек; |
Копирование / вставка ячеек:
Копирование ячеек происходит в два этапа: сначало надо выделить копируемую область и копировать ее методом Copy(), а затем нужно выделить область, в которую будут вставлены скопированные ячейки и вставить их<?php $xls = new COM("Excel.Application"); // Создаем новый COM-объект $xls->Application->Visible = 1; // Заставляем его отобразиться $xls->Workbooks->Add(); // Добавляем новый документ // Задаем копируемую ячейку $range=$xls->Range("A1"); $range->Value = "Cправочник Web-языков"; // Копируем ее $range->Copy(); // Задаем область, в которую скопируется ячейка $range=$xls->Range("A3:A9"); $range->Select(); $range=$xls->Selection(); // Вставляем $xls->ActiveSheet->Paste(); ?>Здесь ActiveSheet - ссылка на выделенные ячейки.
Перемещение ячеек:
Если при копировании копируемые ячейки оставались на месте, то при перемещении копируемые ячейки удаляются.Перемещение осуществляется методом Cut().
<?php $xls = new COM("Excel.Application"); // Создаем новый COM-объект $xls->Application->Visible = 1; // Заставляем его отобразиться $xls->Workbooks->Add(); // Добавляем новый документ // Задаем копируемую ячейку $range=$xls->Range("A1"); $range->Value = "Cправочник Web-языков"; // Копируем ее $range->Cut(); // Задаем область, в которую скопируется ячейка $range=$xls->Range("A3"); $range->Select(); $range=$xls->Selection(); // Вставляем $xls->ActiveSheet->Paste(); ?>