Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 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
15-1214636002
Kolan
2008-06-28 10:53
2008.08.17
Все отстрелялся, теперь я учёный! :)


15-1214669750
Tommy
2008-06-28 20:15
2008.08.17
async professional


2-1215757475
Igor_34
2008-07-11 10:24
2008.08.17
Текущее разрешение экрана


2-1215972445
Дима
2008-07-13 22:07
2008.08.17
Ошибка консольного приложения, при расчете CRC32 суммы?


2-1216099771
Пробежал
2008-07-15 09:29
2008.08.17
StringGrid





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский