Работа с OpenOffice Writer и MS
Word из Borlan C++ Builder через OLE.
Разробатывал сам пользуясь поиском по интернету и советами с форумов, требовалось по работе, может кому пригодится. Есть почти все, что требуется для вывода отчетов из Билдера в Офис (работа с текстом и таблицами). Программа может сама определить, какой Офис установлен и выбрать, в какой требуется выодить информацию.
Реализованы фунуции:
·
CheckOffice();
·
OfficeVisible(AnsiString
Office, Variant app, Variant Document, bool Visible); //показать документ
·
OfficeFindReplace(AnsiString
Office, Variant app, Variant Document, AnsiString sFind, AnsiString sReplace);
// найти sFind и заменить на
sReplace
·
OfficePrintPreview(AnsiString
Office, Variant Document); //предпросмотр
·
OfficePrint(AnsiString
Office, Variant app, Variant Document); // печать
·
OfficePrintParam(AnsiString
Office, Variant app, Variant Document, int vCopies, AnsiString vRangeText,
AnsiString vPrinter); // печать с параметрами
·
OfficeFillCell(AnsiString
Office, Variant Document,int table,int string,int row, AnsiString str); // Записать строку STR в ячейку номер
(String, Row) таблицы номер
Table
·
OfficeTableAddRow(AnsiString
Office, Variant Document, int table);
// добавить 1 строку в конец
·
OfficeOpenDoc(AnsiString
Office, Variant *app, AnsiString FileName); // открыть документ
·
OfficeSaveDoc(AnsiString
Office, Variant Document); // сохранить документ
·
OfficeSaveAsDoc(AnsiString
Office, Variant Document, AnsiString FileName); // сохранить документ как
·
OfficeQuit(AnsiString Office,
Variant app, Variant Document); // закрыть документ
·
OfficeStrDel(AnsiString
Office, Variant app, Variant Document, int Str, int Cnt); // удалить строки
Архив (OLEwork.cpp и OLEwork.h):
Советы, предложения и указания на возможные ошибки приветствуются.
(C) lYY (Леонид)