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

Вниз

Как в Word вставить таблицу?   Найти похожие ветки 

 
andr   (2002-03-26 14:52) [0]

Как в Word вставить таблицу и заполнить её значениями?
Соединение с Word с помощью TWordApplication и TWordDocument.
Приведите, если не затруднит, небольшой пример.


 
aus ©   (2002-03-26 15:16) [1]

Воспользуйся поиском по конференции, там все есть.


 
andr   (2002-03-26 15:31) [2]

там есть примеры для Dlphi 1 и т.п.
А надо для соединения с Word с помощью TWordApplication и TWordDocument.


 
Толик   (2002-03-26 16:23) [3]

Сделать это можно по разному. Как вариант:

uses
Word2000;//этот файл лежит скорее всего в ..Delphi6/Ocx/Servers

procedure TForm1.Button2Click(Sender: TObject);
var
Template, OpenAsTemplate, DefaultTableBehavior, AutoFitBehavior, Unit_, Count, MoveType: OleVariant;
WordDocs: Documents;
WordDoc: _Document;
Range: Word2000.Range;
WordTables: Tables;
WordSel: Selection;
begin
WordApp := CoWordApplication.Create();
Template := "Normal";
OpenAsTemplate := FALSE;
WordDocs := WordApp.Documents;
WordDoc := WordDocs.AddOld(Template, OpenAsTemplate);
Range := WordDoc.Range(EmptyParam, EmptyParam);
WordTables := WordDoc.Tables;
DefaultTableBehavior := wdWord9TableBehavior;
AutoFitBehavior := wdAutoFitFixed;
WordTables.Add(Range, 10, 3, DefaultTableBehavior, AutoFitBehavior);
WordSel := WordApp.Selection;
WordSel.TypeText("некий текст");
Unit_ := wdCharacter;
Count := 2;
MoveType := wdMove;
WordSel.MoveRight(Unit_, Count, EmptyParam);
WordSel.TypeText("ещё какой-то текст");
Unit_ := wdLine;
Count := 1;
WordSel.MoveDown(Unit_, Count, MoveType);
WordSel.TypeText("а вот и ещё данные");
WordApp.Visible := TRUE;
end;

Сразу хочу предупредить, что этот пример совсем не оптимизирован, т.к. был написан прямо сходу. Он был написан на Delphi6 для Office2000.

А вообще совет на будущее: открываешь Ворд, выбираешь пункт меню Сервис-Макрос-Начать_запись. Потом делаешь в в Ворде всё, что ты хочешь, затем выбираешь пункт меню Сервис-Макрос-Макросы, выбираешь свой макрос, открываешь его в редакторе VB и смотришь, как все твои действия понимает Ворд. В Делфях пишешь точно так же, в смысле получаешь интерфейсы и вызываешь нужные ф-и. Названия их как правило соответствуют тому, что написано в редакторе VB.


 
AFROLOV   (2002-03-26 16:29) [4]

Можно и без TWordApplication
Var
MSWord:Variant;
..
begin
MSWord:=CreateOleObject("Word.Application");
...

MSWord.ActiveDocument.Tables.Add(MSWord.ActiveDocument.Selection.Range,4,3,1,1);//Создание таблицы 4х3

MSWord.ActiveDocument.Tables(1).Cell(1, 1).Range.InsertAfter ("Cell 1,1")//Заносим текст в ячейку таблицы

end;

Как работать с таблицами посмотри в справке по VBA.
А так же юзай MacroRecorder. (Он за тебя почти всю работу делать будет.)




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

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

Наверх




Память: 0.47 MB
Время: 0.011 c
1-22661
LiNkS
2002-03-27 21:59
2002.04.08
Как переместить в Memo курсор на опр. место в опр. строке?


7-22860
Донской
2002-01-15 19:30
2002.04.08
Виртуальный порт


14-22813
С_тоша
2002-02-26 18:10
2002.04.08
HELP!!!!!!!!


1-22623
[HDD]John
2002-03-27 17:16
2002.04.08
Кстати о SendKeys ....


3-22548
Atrem
2002-03-13 20:00
2002.04.08
Сортировка НД