Библиотека программиста

27.11.2024 - Работаем с MS Word из Delphi

Основные функции для удаленной работы с MS Word в среде Delphi.




Инициализация и запуск

Во-первых, в разделе uses нужно подключить модуль ComObj.

Во-вторых объявляем переменную типа variant для обращения к MS Word.

Инициализацию и запуск MS Word иллюстрирует следующий пример:

Код
uses ComObj;
...
procedure RunWord;
var Word: variant;
begin
try
Word := CreateOleObject('Word.Application');
except
ShowMessage('Не могу запустить MS Word');
end;
end;

// отображение на экране
MsWord.Visible := True;

// создание нового документа
MsWord.Documents.Add;
// открытие существующего документа
MsWord.Documents.Open('c:test.doc');



Добавление (запись) текста в документ MS Word

Все покажу на примере:

Код
Word.ion.TypeText(Text:=MyText);
// где MyText - переменная, хранящая текст для записи в документ.

Word.ion.TypeParagraph;
// добавление нового абзаца

.
.
.
.
.
.
Стоит заметить, что запись текста производится в место позиционирования курсора. По умолчанию это начало документа.

Чтение текста из документа MS Word

С помощью команды Word.ion мы можем считать символ стоящий после курсора, либо, если выполнено выделение, выделенный фрагмент текста.

Код
MyText:= Word.ion;
// где MyText - переменная для хранения считанных данных

.
.
.
Для передвижения курсора по тексту документа можно использовать следующий набор команд:

Код
Word.ion.MoveRight;
// передвинуть курсор на символ вправо

Word.ion.MoveLeft;
// передвинуть курсор на символ влево

Word.ion.MoveUp;
// на строку вверх

Word.ion.MoveDown;
// на строку вниз


Выход (закрытие) MS Word

Если есть открытый активный документ, то закрытие документа осуществляется следующим образом:

Код
// выход без сохранения
MsWord.ActiveDocument.Close(Saves:=0);

.
.
.
А затем закрываем приложение

Код
MsWord.Quit;


Удачной работы!
Опубликовано на сайте: http://www.coders-library.ru
Прямая ссылка: http://www.coders-library.ru/index.php?name=news&op=view&id=51