![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Работа с Word - поиск и замена [D5, Win2k]
Vitalik_P © (2004-10-25 15:39:00)Как в открытом RTF-файле заменить некоторые фрагменты текста (типа ID_1, ID_2)на другие?
Rouse_ (2004-10-26 15:19:00) [1]Что-то наподобие...
procedure CreateReport(const Path: String; const Index: Byte = 0;
Shablon: Boolean = False);
var
W: Variant;
I: Byte;
ClassID: TCLSID;
procedure Replace(const Value, Result: String);
begin
W.Selection.Find.Execute(Value, EmptyParam, EmptyParam, EmptyParam,
EmptyParam, EmptyParam, EmptyParam, 1, EmptyParam,
Result, EmptyParam);
Application.ProcessMessages;
end;
begin
if CLSIDFromProgID('Word.Application', ClassID) <> S_OK then
begin
MessageBox(MainForm.Handle, PChar('Word не обнаружен. Создание отчета не возможно'),
'Внимание!!!',MB_OK or MB_ICONERROR);
MainForm.StatusBar1.Panels.Items[0].Text := ' Ошибка...';
Exit;
end;
W := CreateOleObject('Word.Application');
W.Documents.Open(FileName := Path, ReadOnly:=False);
Replace('<Qpn>',
FormatFloat('0', HeatData[0].Qpn));
Replace('<1>', HeatData[0].BoilerName);
Replace('<2>', HeatData[0].Snumber);
Replace('<3>', HeatData[0].Rnumber);
Replace('<4>', HeatData[0].Znumber);
Replace('<5>', MainForm.ComboBox2.Text);
Replace('<6>', HeatData[0].Obor);
Replace('<7>', HeatData[0].Ust);
и т.д.
1008 (2004-10-26 14:39:00) [2]http://www.delphiworld.narod.ru/