Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: ActiveX/СОМ/CORBA > Экспорт таблицы в Word


Автор: GAZ 23.1.2006, 14:29
Господа программисты, вопрос такой:
Необходимо выводить данные в таблицу в word-овский файл.
Делаю примерно так:
Код

//Создаем объект wordapplication
WordApp := CreateOleObject('Word.Application');
WordApp.Visible := true;
//Создаем документ
NewDoc := WordApp.Documents.Add('word.doc', False, 0);
//Число столбцов и строк
iCols := StringGrid1.ColCount;
iRows := StringGrid1.RowCount;
//Добавляем таблицу
WordTable := NewDoc.Tables.Add(WordApp.Selection.Range, iCols, iRows);
//Заполняем таблицу данными из stringgrid
for iGridRows := 1 to iRows do
  for jGridCols := 1 to iCols do
    WordTable.Cell(iGridRows, jGridCols).Range.Text :=StringGrid1.Cells[jGridCols - 1, iGridRows - 1];
//Сохраняем
WordApp.ActiveDocument.SaveAs('word.doc');
//Выходим
WordApp.Quit;
//Освобождаем
WordApp := Unassigned;
NewDoc := Unassigned;
WordTable := Unassigned;

Все работает ОК, таблица заполняется.
Но границы у таблицы отсутствуют.
Может кто подскажет как границы добавить/показать?

Автор: Albinos_x 23.1.2006, 18:18
Код

// сетка таблицы
 WordTable.Borders.InsideLineStyle:=wdLineStyleSingle;
 WordTable.Borders.OutsideLineStyle:=wdLineStyleSingle;

Автор: GAZ 23.1.2006, 19:00
Albinos_x Большое спасибо!

Автор: GAZ 24.1.2006, 09:06
Albinos_x
Все было бы хорошо, если бы не было так плохо:
Пишу:
Код

WordTable.Borders.InsideLineStyle:=wdLineStyleSingle;    
WordTable.Borders.OutsideLineStyle:=wdLineStyleSingle;

Выдает: "Error: undeclared identifier".
Где эти константы описаны?

Автор: Albinos_x 24.1.2006, 17:46
точно должны быть в WordXP, в остальных не пробовал...

Автор: bas 24.1.2006, 18:43
Цитата(GAZ @ 24.1.2006, 09:06 Найти цитируемый пост)

Где эти константы описаны?

на BCB in word_2k.h
можно написать
Код

WordTable.Borders.InsideLineStyle:=1; 

Автор: YurikGL 24.1.2006, 21:29
Цитата

Выдает: "Error: undeclared identifier".
Где эти константы описаны?

Вместо констант можно использовать числовые значения.

Чтобы получить значение констант VisualBasic, которые Дельфи вообще говоря не понимает, надо внутри макроса написать MsgBox(нужная_константа). Тогда он покажет ее численное значение, их-то в Дельфи и использовать.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)