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

Вниз

WordApplication   Найти похожие ветки 

 
td   (2003-04-27 21:05) [0]

Мне надо программно создать документ, где будет заголовок и таблица.
я пытаюсь делать так

Range1:=WordApp1.ActiveDocument.Range(1,1);
Range1.Font.Size:=12;

WordApp1.ActiveDocument.Tables.Add(Range1,2,8);

WordApp1.ActiveDocument.Range(EmptyParam,EmptyParam).InsertBefore("Какой-то заголовок"+#13);


но в результате заголовок у меня оказывается в самой первой ячейке таблицы.
(м.б., это оттого, что у меня 97-й офис?)

Как можно решить проблему?


 
Salvator ©   (2003-04-27 21:59) [1]

Посмотри как делал я:

WordApplication1.Disconnect;
WordApplication1.Documents.add(EmptyParam,EmptyParam);
WordApplication1.Visible:=True;

{создал документ}

WordApplication1.Selection.InsertAfter(Table6["institut"]+#13);
WordApplication1.Selection.InsertAfter("ПРОТОКОЛ №____________от "___"_____________200__г."+#13);
WordParagraphFormat1.ConnectTo(WordApplication1.Selection.ParagraphFormat);
WordParagraphFormat1.Alignment:=1;
WordFont1.ConnectTo(WordApplication1.Selection.Font);
WordFont1.Size:=12;
WordApplication1.ActiveDocument.PageSetup.Set_Orientation(1);
WordApplication1.Selection.InsertAfter(#13);

{Текст перед таблицей}

Direction:=0;
WordApplication1.Selection.Collapse(Direction);

{Снял выделение}

WordApplication1.ActiveDocument.Tables.Add(WordApplication1.Selection.Range,1,14);
WordFont1.ConnectTo(WordApplication1.Selection.Font);
WordFont1.Size:=12;

{Добавил таблицу}

WordApplication1.Selection.InsertAfter("№ п/п");
WordApplication1.Run("NextCell");
WordApplication1.Selection.InsertAfter("Фамилия И.О.");
WordApplication1.Run("NextCell");
WordApplication1.Selection.InsertAfter("Год рождения");
WordApplication1.Run("NextCell");
WordApplication1.Run("NextCell");

{перемещение по таблице}

WordApplication1.Run("TableDeleteRow");

{удалил последнюю строку}

varrow:=1;
varcol:=2;
WordApplication1.ActiveDocument.Tables.Item(1).Cell(1,1).Merge(WordApplication1.ActiveDocument.Tables.Item(1).Cell(2,1));
WordApplication1.ActiveDocument.Tables.Item(1).Cell(1,4).Merge(WordApplication1.ActiveDocument.Tables.Item(1).Cell(1,7));
WordApplication1.ActiveDocument.Tables.Item(1).Cell(1,5).Merge(WordApplication1.ActiveDocument.Tables.Item(1).Cell(2,5));

{Объединил некоторые ячейки}


 
td   (2003-04-27 23:47) [2]

спасибо!


 
td   (2003-04-28 18:00) [3]

у меня этот пример все равно не так заработал. :(
(что значит строка WordApplication1.Selection.InsertAfter(Table6["institut"]+#13);?)

Заголовок оказался после таблицы..


 
td   (2003-04-28 21:59) [4]

up


 
Salvator ©   (2003-04-28 22:09) [5]

Строка:
WordApplication1.Selection.InsertAfter(Table6["institut"]+#13)

Вставляет в документ строку из базы данных!
Она физически не может попасть после таблицы! Т.к. сначала я снимаю выделение и перехожу на следующую строку, и только после этого вставляю таблицу!

Если что не понятно пиши лучше на мыло(проще будет объяснить).
salvator@students.ru



 
td   (2003-04-28 23:24) [6]

это я Direction опрометчиво исправила на EmptyParam.
Теперь все как надо работает. Спасибо :)



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

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

Наверх




Память: 0.48 MB
Время: 0.011 c
1-34413
sndanil
2003-04-30 13:06
2003.05.12
Cокрытие MDIChild формы


1-34439
ksushishka
2003-04-25 18:54
2003.05.12
Работа с документами Excel


6-34528
nester
2003-03-12 23:25
2003.05.12
Как сделать так, чтобы при скачивании с инета сразу запускалась


1-34446
Viper_
2003-04-29 04:37
2003.05.12
Image


14-34559
TCrash
2003-04-23 15:03
2003.05.12
ICQ ???????????