Среда, 15.01.2025, 23:08
AMAR Inc.
Приветствую Вас Гость | RSS
Главная Программирование Регистрация Вход
Меню сайта

Категории каталога
Разные статьи [48]
Система [62]

Главная » Статьи » Delphi » Разные статьи

Обращение к Excel из DELPHI

   В данном обзоре рассмотрены основные конструкции, позволяющие получить доступ к книге Excel из DELPHI.

Организация доступа к книге EXCEL

   Для взаимодействия с MS excel в программе необходимо использовать модуль ComObj
uses ComObj;
   и объявить переменную для доступа к MS excel следующего типа:
var Excel: Variant;

   Инициализация переменной Excel в простейшем случае можно осуществить так:
    Excel := CreateOleObject('Excel.Application');

   Создание новой книги:
    Excel.Workbooks.Add;

   Открытие существующей книги (где path - путь к фалу с расширением xls.):
    Excel.Workbooks.Open[path];

   Открытие существующей книги только для чтения:
    Excel.Workbooks.Open[path, 0, True];

   Закрытие Excel:
    Excel.ActiveWorkbook.Close;
    Excel.Application.Quit;

   Блокировка запросов (подтвеждений, уведомлений) Excel, например, запретить запрос на сохранение файла:
    Excel.DisplayAlerts:=False;

   Отображаем Excel на экране:
    Excel.Visible := True;
   или скрываем:
    Excel.Visible := False;

   Печать содержимого активного листа excel:
    Excel.ActiveSheet.PrintOut;

Чтение/запись данных в EXCEL

   Доступ к ячейке в текущей книге Excel можно осуществить следующим образом:
    Excel.Range['B2']:='Привет!';- для записи значения в ячейку или s:=Excel.Range['B2']; - для чтения, где B2 - адрес ячейки.

   Или используя стиль ссылок R1C1:
    Excel.Range[excel.Cells[2, 2]]:='Привет!';, где[2, 2] - координата ячейки.

   Вообще, ячейке Excel можно присваивать любое значение (символьное, целое, дробное, дата) при этом Excel установит форматирование в ячейке применяемое по умолчанию.

Формат ячеек в EXCEL

   Выделить (выбрать) группу ячеек для последующей работы можно так:
   Excel.Range[Excel.Cells[1, 1], Excel.Cells[5, 3]].Select; или Excel.Range['A1:C5'].Select; при этом будет выделена область находящаяся между ячейкой A1 и C5.

   После выполнения выделения можно установить:

1) объединение ячеек Excel.Selection.MergeCells:=True;

2) перенос по словам Excel.Selection.WrapText:=True;

3) горизонтальное выравнивание Excel.Selection.HorizontalAlignment:=3; при присваивании значения 1 используется выравнивание по умолчанию, при 2 - выравнивание слева, 3 - по центру, 4 - справа.

4)вериткальное выравнивание Excel.Selection.VerticalAlignment:=1; присваиваемые значения аналогичны горизонтальному выравниванию.

5) граница для ячеек Excel.Selection.Borders.LineStyle:=1; При значении 1 границы ячеек рисуются тонкими сплошными линиями.

  Кроме этого можно указать значения для свойства Borders, например, равное 3. Тогда установится только верхняя граница для блока выделения: Excel.Selection.Borders[3].LineStyle:=1;

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

Использование паролей в EXCEL

   Установка пароля для активной книги может быть произведена следующим образом:
try // попытка установить пароль
Excel.ActiveWorkbook.protect('pass');
except // действия при неудачной попытке установить пароль
end;

где pass - устанавливаемый пароль на книгу.

   Снятие пароля с книги аналогично, использовуем команду
Excel.ActiveWorkbook.Unprotect('pass');
где pass - пароль, установленный для защиты книги.

   Установка и снятие пароля для активного листа книги Excel производится командами
Excel.ActiveSheet.protect('pass'); // установка пароля
Excel.ActiveSheet.Unprotect('pass'); // снятие пароля

где pass - пароль, установленный для защиты книги.

Вспомогательные операции в EXCEL

   Удаление строк со сдвигом вверх:
Excel.Rows['5:15'].Select;
Excel.Selection.Delete;

при выполнении данных действий будут удалены строки с 5 по 15.

   Установка закрепления области на активном листе Excel
// снимаем закрепление области, если оно было задано
Excel.ActiveWindow.FreezePanes:=False;
// выделяем нужную ячейку, в данном случае D3
Excel.Range['D3'].Select;
// устанавливаем закрепление области
Excel.ActiveWindow.FreezePanes:=True;

Удачной работы!

Content-Disposition: form-data; name="sort" 50
Категория: Разные статьи | Добавил: amar-runyak (22.09.2007)
Просмотров: 3347 | Комментарии: 2 | Рейтинг: 0.0/0 |

Всего комментариев: 2
2 KeeceCibhuh  
0
http://loveepicentre.com/testimonials.php - http://loveepicentre.com/uploades/photos/12.jpg
online dating game shows http://loveepicentre.com/ - dysfunctional dating relationships 100 free dating no credit card
asian speed dating in london http://loveepicentre.com/map.php - bobby dating completely free senior dating site
dating from the inside out http://loveepicentre.com/ - free woman dating woman websites can hanging out lead to dating

1 Vofobenny  
0
casper speed dating http://loveepicentre.com/advice.php dating service catholics

Имя *:
Email *:
Код *:
Форма входа

Поиск

Друзья сайта

Статистика

Copyright AMAR Inc. © 2025