Вниз
Скачать: CL | DM;

Из Stringgrid в Word   Найти похожие ветки 

 
Lede   (2010-04-08 15:30) [0]

Здравствуйте! Очень нужна помощь!
Необходимо в Word вставить несколько таблиц с данными из разных Stringgrid.
Одну таблицу получается вставить, а следующую - нет.
Вот код:

uses ComObj
....
procedure TForm1.SpeedButton8Click(Sender: TObject);
var
 W, Table, Table2: Variant;
 Row, Col, i, j: Integer;
 s: string;
begin
//создаем документ
 W := CreateOleObject("Word.Application");
 W.Documents.Add;

//Создаем таблицу. clnum - это моя переменная, которая содержит число строк.
 W.ActiveDocument.Tables.Add(W.ActiveDocument.Range,
 clnum+1, main.ColCount-9);

//Выбираем созданную таблицу
 Table := W.ActiveDocument.Tables.Item(1);

//Прорисовываем сетку  
Table.Style := "Сетка таблицы";

//Загоняем в таблицу данные из StringGrid (main).
 for i := 1 to clnum+1 do
   for j := 1 to 9 do
   begin

// первую колонку таблицы оставляем пустой, так как туда и надо будет загнать то, что прописано в 3-ем пункте.
     Table.Cell(i + 1, j).Range.Text := main.Cells[j, i];

// назначаем стиль таблицы
     Table.Cell(i, j).Range.Font.name:="ISOCPEUR";
     Table.Cell(i, j).Range.Font.size:=11;
     Table.Cell(i, j).Range.Font.italic := 2;
     end;

// В первую ячейку загоняем то, о чем писалось в 3-ем пункте Fg м3
 Table.Cell(1, 1).Range.Select;
 s := "F";
 W.Selection.TypeText(s);
 W.Selection.Font.Subscript := 1; //врубаем нижний регистр
 s := "g";
 W.Selection.TypeText(s);
 W.Selection.Font.Subscript := 0; //отрубаем нижний регистр
 s := "м";
 W.Selection.TypeText(s);
 W.Selection.Font.Superscript := 1; //теперь верхний
 s := "3";
 W.Selection.TypeText(s);
 W.Selection.Font.Superscript := 0; //отрубаем верхний

//открываем ворд
W.Visible := True;

Пробовала в том коде дописать - не получается, надо как-то сделать отступ от 1-ой таблицы:

var
W, Table, Table2: Variant;
...
begin
.....

 W.ActiveDocument.Tables.Add(W.ActiveDocument.Range,
4, 5);
 Table2 := W.ActiveDocument.Tables.Item(2);


 
YurikGL ©   (2010-04-08 19:03) [1]

Вставляем данные, говорим converttotable идем курсором в самый конец документа, делаем пару переносов строк, вставляем данные и конвертируем их в таблицу...

Подробности тут http://www.delphimaster.ru/articles/dbtoword/index.html


 
Lede   (2010-04-09 09:16) [2]

Спасибо! Вы мне очень помогли!



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.054 c
2-1273577748
Shyrick
2010-05-11 15:35
2010.08.27
MainMenu & WinAPI


2-1265410299
Vladimir200000
2010-02-06 01:51
2010.08.27
запись массива в поток


11-1221196936
L`Autour
2008-09-12 09:22
2010.08.27
Проблема с обработкой WM_PAINT в OnMessage


15-1275596979
Юрий
2010-06-04 00:29
2010.08.27
С днем рождения ! 4 июня 2010 пятница


2-1274358308
Tifon
2010-05-20 16:25
2010.08.27
Как определить какая кнопка была нажата на клавиатуре.




   Наверх