Форум: "Основная";
Текущий архив: 2002.04.08;
Скачать: [xml.tar.bz2];
ВнизКак в 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;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.008 c