Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2010.08.27;
Скачать: 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 вся ветка

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

Наверх




Память: 0.47 MB
Время: 0.063 c
3-1238243754
Ivan8511
2009-03-28 15:35
2010.08.27
Индексация даты в обратном порядке


4-1231600539
Nucer
2009-01-10 18:15
2010.08.27
LSP (Layered Service Provider)


2-1274121959
Semen
2010-05-17 22:45
2010.08.27
Объединение 3-х полей таблицы Paradox в одно.


2-1271147554
Сергей
2010-04-13 12:32
2010.08.27
Ошибка сокета.


15-1267122258
Fenik
2010-02-25 21:24
2010.08.27
YAML под Delphi