ПредишенСледващото

Как програма в Word-е добавяне на таблица?

И здравей отново.

Pzhl да помогне за решаването на този проблем. Програмата се създаде Word документ-бияч, който за пръв път излиза някакъв малък текст, но след това е необходимо да вмъкнете таблица с данните. Така че, след дълго търсене намерих само как да вмъкнете таблица на чист лист и имам нужда от него, за да се добавя след линия.
Моля, кажете ми как да го направя?

секции вмъкване Пример маса

процедура TForm1.Button1Click (Sender: TObject);
започвам
// ако заглавие "Изход", след това затворете програмата
ако button1.caption = "Exit", след това
започвам
Application.Terminate;
изход
край
// в противен случай (когато за първи път започна, когато имаме заглавието на "Старт")
// преименуване на заглавието в "изход"
останало button1.caption: = "Изход";

panel1.Visible: = вярно;
// създаде например на Word
WordApp: = CoApplication_.Create;
// да го направите видим
WordApp.Visible: = вярно;
// шаблон
шаблон: = "Normal";
// създаване на шаблон
OpenAsTemplate: = фалшива;
// нещо подобно на оператора, че е възможно и да се обръща директно
Документи: = WordApp.Documents;
// добавяне на документ
Doc: = Docs.Add (шаблон, OpenAsTemplate);

// изберете всички
Обсег: = Doc.Range (EmptyParam, EmptyParam);
// масив от параграфи
парс: = doc.Paragraphs;
// променлива - параметър
шаблон: = обсег;
// нов параграф
ал: = pars.Add (шаблон);
// Цвят Зелен
par.Range.Font.ColorIndex: = 11;
// въведете текст
par.Range.InsertBefore ( "Hello.");
// променлива - параметър
шаблон: = par.Range;
// нова точка на масата не се втрива текст
ал: = pars.Add (шаблон);
// черен
par.Range.Font.ColorIndex: = 0;
// въведете текст
par.Range.InsertBefore ( "Превключи на програмата, можете да програмно промените текста на клетките!");
// променлива - параметър
шаблон: = par.Range;
// нова точка на масата не се втрива текст
ал: = pars.Add (шаблон);
// изберете точка
обсег: = par.Range;

// шрифт - удебелен
ARange.Font.Bold: = 1;
// шрифта - ръкописен
ARange.Font.Italic: = 1;
// получите набор от таблици
tabls: = aRange.Tables;
// добавяне на нова таблица с размери 5 от 5
табл: = tabls.Add (обсег, 5,5);
// линия
защото: = 1 до 5 направи
// определя стойността на клетка
tabl.Cell (I, 1) .Range.Text: = inttostr (I);

Последните стъпки, за да запишете файла

процедура TForm1.FormDestroy (Sender: TObject);
Var
// параметри за
SaveChanges: olevariant;
започвам
// Ако думата не е затворен
ако не VarIsEmpty (WordApp) след това да започне
<а можно сохранить автоматом:
// име на Ole
шаблон: = "Imya.doc";
// ако не спаси,
ако doc.Saved = фалшива тогава
// магазин
Doc.SaveAs (шаблон, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam);

Накратко, напиши името на обект с начална точка и натиснете
"Ctrl" + "" и изучаване на съществуващите методи и комуникационно-ва
>
// промени, не се съхраняват
SaveChanges: = фалшива;
// затвори първия документ
Doc.Close (SaveChanges, EmptyParam, EmptyParam);
// и след това слово
WordApp.Quit (SaveChanges, EmptyParam, EmptyParam)
приключи;

Да, кодът не е мое
Източник potyrili къде - не си спомням.

С течение на кода на курса ви благодаря, хубаво нещо.
Харесва ми това, и се опита да направи наскоро, но постоянно се тази грешка:

Метод "Range" не се поддържа от автоматизация обект

и честно казано нямам идея как да се отървете от него, не се пита?

Наистина ли?
И не се опитвай нещо подобно, но е така. Изглежда, на пръв поглед, всичко е наред.
Въпреки че не е тествана.
N ак имам подобен код отново, когато всичко е наред. Само таблиците не съм добавят - четат и калайджия с текста на ток.

И статията, и точно там, където имате грешка? За това, което е обект той намира Range?

Ами, просто, за да не се превърне, променливите са различни, отново различен текстови добавя, и т.н. -)))

И между другото, с текста, аз също добре, и добавя и редактира, и всички ние сме направили, но в тази операция:

и тази грешка.

Ами все още помага да започнете да записвате действия в макро VBA. И тогава анализът на макроса.

Само не забравяйте за възможните разлики между различните версии на Office, а след това можете да се движат по неподдържани функции.

Бях на четене царство. Налице е: как да се създаде таблица за целия (и празен) лист, тъй като тя е да се редактира, как да се включите в таблицата по определен начин редактирания текст (между другото, тъй като тя е толкова категорично редактирате също не казва). Между другото, в отговор KSergey описано същото, само по-разбираемо. Но никъде не отговори на въпроса ми.

конст
wdAutoFitFixed = 0;
wdWord9TableBehavior = 1;
.

WordApp.ActiveDocument.Tables.Add (обхват: = WordApp.Selection.Range, NumRows: = 5, NumColumns: = 5, DefaultTableBehavior: = wdWord9TableBehavior, AutoFitBehavior: = wdAutoFitFixed);

Свързани статии

Подкрепете проекта - споделете линка, благодаря!