Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.05.30;
Скачать: CL | DM;

Вниз

Экспорт данных в MS Word   Найти похожие ветки 

 
Виталий Джангл   (2004-05-19 12:39) [0]

Доброго времени суток!

Кто-нибудь владеет навыками экспорта данных в MS Word? У меня есть код, передающий данные таблицы в текстовый редактор Word97. Может быть у кого-либо найдется код, который будет совместим и с другими версиями Word – 2000/XP?

procedure TFormOff.BtnWordClick(Sender: TObject);
var
 Bookmark: TBookmark;
 RangeW: Word97.Range;
 v1: Variant;
 ov1: OleVariant;
 Row1: Word97.Row;
begin
 WordDocument1.Activate;
 WordDocument1.Range.Text := "American Capitals from " + Table1.TableName;
 WordDocument1.Range.Font.Size := 14;
 Table1.DisableControls;
 try
   Bookmark := Table1.GetBookmark;
   try
     Table1.First;
     while not Table1.EOF do
     begin
       WordDocument1.Range.InsertParagraphAfter;
       WordDocument1.Paragraphs.Last.Range.Text :=
         Table1.FieldByName ("Name").AsString + #9 +
         Table1.FieldByName ("Capital").AsString;
       Table1.Next;
     end;
   finally
     Table1.GotoBookmark (Bookmark);
     Table1.FreeBookmark (Bookmark);
   end;
 finally
   Table1.EnableControls;
 end;
 RangeW := WordDocument1.Content;
 v1 := RangeW;
 v1.ConvertToTable (#9, 19, 2);
 Row1 := WordDocument1.Tables.Item(1).Rows.Get_First;
 Row1.Range.Bold := 1;
 Row1.Range.Font.Size := 30;
 Row1.Range.InsertParagraphAfter;
 ov1 := " ";
 Row1.ConvertToText (ov1);
end;


 
YurikGl ©   (2004-05-19 14:19) [1]

А какое место не работает?


 
MetalFan ©   (2004-05-19 14:26) [2]

используй позднее связывание без всяких там TLB


 
YurikGl ©   (2004-05-19 14:33) [3]

MetalFan ©   (19.05.04 14:26) [2]

Тогда уж XML


 
Курдль ©   (2004-05-19 14:45) [4]

А еще лучше - RTF напрямую, без использования ворда.


 
Vadim X   (2004-05-19 14:51) [5]

W:OlEVariant;
begin
 W:=CreateOleObject("Word.Application.8");
 W.Visible:=true;
 W.Documents.Add;
 W.Selection.TypeText(Text:= "Text");
 W.Selection.TypeParagraph;

а можно без указания версии
 W:=CreateOleObject("Word.Application");


 
Виталий Джангл   (2004-05-19 20:15) [6]

При экспорте данных в Word2000, сам текстовый процессор Word подвисает. Этот код хорош тем, что он рисует табличку и вставляет в ячейки данные.


 
YurikGl ©   (2004-05-19 21:38) [7]

Работаю подобным образом через компоненты для Office2000 и никаких проблем совместимости. Работает и в 97 и в 2000 и в XP и в 2003


 
Виталий Джангл   (2004-05-20 11:47) [8]

[b]YurikGl[/b], помоги пожалуйста преобразовать код для компонентов Word2000.
При замене  переменных на
RangeW: Word2000.Range;
Row1: Word2000.Row;

функция Row1.ConvertToText (ov1) для Word2000 требует второго параметра. А что за он, понять не могу. Так, вроде, все отлично.


 
YurikGl ©   (2004-05-20 11:58) [9]

nil попробуй, или 1



Страницы: 1 вся ветка

Текущий архив: 2004.05.30;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.062 c
6-1081776687
petro
2004-04-12 17:31
2004.05.30
Проблема c UDP


7-1082450495
ЛеонидП
2004-04-20 12:41
2004.05.30
Свой компьютер в сети


3-1083825041
Михаил
2004-05-06 10:30
2004.05.30
взлом базы SQL или dBase


3-1084185491
Viktor
2004-05-10 14:38
2004.05.30
Конфликт транзакций


1-1085035121
Sandman25
2004-05-20 10:38
2004.05.30
procedure of class?