Форум: "Начинающим";
Текущий архив: 2008.08.17;
Скачать: [xml.tar.bz2];
ВнизСоздание таблицы в word Найти похожие ветки
← →
Newss (2008-07-15 13:06) [0]Здравствуйте.
Вопрос такой. Я из дельфей создаю таблицу в ворде. Делаю это так:Var Words, sel,T : Variant;
Words := CreateOleObject("Word.Application");
Words.Visible := True;
Words.Documents.Add;
Words.Selection.Font.Size := 12;
Words.Selection.Font.Bold := true;
Words.Selection.TypeText("Исходные данные"+ #13 + #13);
Words.Selection.Font.Bold := false;
sel1:=Words.Selection.Range;
sel1.Tables.Add(sel1,n+2,7,EmptyParam,EmptyParam); //n – количество строк, задаваемое в программе
T1:=Words.ActiveDocument.Tables.Item(1);
Далее идет заполнение ячеек созданной таблицы данными, рассчитанными в программе. После окончания заполнения этой таблицы мне нужно под ней создать следующую. Делаю по той же схеме - возникает ошибка. Таблица начинает создаваться в первой ячейке первой таблицы, а когда доходит до командыT2:=Words.ActiveDocument.Tables.Item(2);
, вылетает ошибка "Запрашиваемый номер семейства не существует".
Помогите, пожалуйста, создать вторую таблицу.
P. S. И еще маленький вопросик: как выровнять текст по центру?
Спасибо.
← →
Костик (2008-07-15 13:11) [1]Созадвай таблицы лучше в икселе легче будет во-первых... а во-вторых, не знаю как там в ворде, не пробывал, а в икселе еслть отличный редактор визуал бейсик, который покажет тебе все константы..)
← →
Ляпа (2008-07-15 13:50) [2]
> Таблица начинает создаваться в первой ячейке первой таблицы
Для передвижения курсора по тексту документа можно использовать следующий набор команд:Word.Selection.MoveRight;// передвинуть курсор на символ вправо
Word.Selection.MoveLeft;// передвинуть курсор на символ влево
Word.Selection.MoveUp;// на строку вверх
Word.Selection.MoveDown;// на строку вниз
Word.Selection.TypeParagraph;// добавление нового абзаца
← →
Smile (2008-07-15 13:56) [3]
> Помогите, пожалуйста, создать вторую таблицу.
Что-то вроде:var: count,unit_: olevariant;
// сдвигаем курсор на одну позицию вниз — выходим за рамки
...
Count:= 1;
unit_:=wdparagraph;
Words.selection.movedown(unit_,count,emptyparam);
//таблицы и попадаем в свободное место под таблицей.
Примерно так, точнее не помню:(
> И еще маленький вопросик: как выровнять текст по центру?Selection.Paragraphs.Format.Alignment:= wdAlignParagraphRight;
← →
Smile (2008-07-15 13:57) [4]Пардон
> Selection.Paragraphs.Format.Alignment:= wdAlignParagraphCenter;
← →
Newss (2008-07-15 15:39) [5]
> Words.selection.movedown(unit_,count,emptyparam); // сдвигаем
> курсор на одну позицию вниз — выходим за рамки
> //таблицы и попадаем в свободное место под таблицей.
Получается не совсем так. Теперь таблица создается в следующей ячейке предыдущей таблицы, но все равно не под ней, а внутри. И по-прежнему есть ошибка "Запрашиваемый номер семейства не существует". Почему-то не получается обратиться к таблице через Item(2).
← →
Ляпа (2008-07-15 16:19) [6]
> Newss (15.07.08 15:39) [5]
> Получается не совсем так. Теперь таблица создается в следующей
> ячейке предыдущей таблицы,
Так куда сдвинул, там и создается ;)
Сдвинь на несколько позиций и посмотри...
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2008.08.17;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.042 c