![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
||||
|
||||
|
Всем прет!
Накопал здесь примерчик как можно заполнять шаблон MSWord-а по меткам но пишет ошибочку не описан индетификатор Код:
GetActiveOleObject Код:
CreateOleObject И второй вопросик в данной ситуации нужно ли подключатся к серверу MSWord WordApplication1.Connect; WordDocument1.Connect; Пример заполнения--> Код:
MSWord:Variant;
What,Which,Count,Name:OLEVariant;
begin
try
MsWord := GetActiveOleObject('Word.Application');
except
try
MsWord := CreateOleObject('Word.Application');
except
raise Exception.Create('Ошибка запуска Word');
end;
end;
try
MSWord.Documents.Open(Имя_файла_шаблона);
except
ShowMessage('Ошибка при попытке WORD загрузить шаблон!');
exit;
end;
What:=-1;
Which:=unAssigned;
Count:=unAssigned;
Name:='Имя_метки';
MsWord.Selection.GoTo(What,Which,Count,Name);
MsWord.selection.TypeText('Текст_метки');
MsWord.Visible:=True; |
|
#2
|
|||
|
|||
|
Держи простенький пример как это делается, по аналогии сможешь сделать свой код.
Код:
procedure TForm1.Button1Click(Sender: TObject);
var WordApp, doc,sel_,cell:Variant; p,ChisloD:string; i:integer;
fil:OLEVariant; Cel1,Cel2:Variant;
begin
try
WordApp:=CreateOleObject('Word.Application');//
doc:=WordApp.Documents.open('E:\Borland Studio Projects\ww\Shablon PasportK.doc');
WordApp.Selection.GoTo(-1,,,'Inv');//переход к закладке
WordApp.Selection.TypeText(Edit1.Text);//вставляем то, что нам надо
except
end;
end; |
|
#3
|
||||
|
||||
|
Ребята так и не ответили что мне делать с CreateOleObject
Delphi пишет что он не задиклорирован (нет описания). под каким типом его описывать,,,??? |
|
#4
|
||||
|
||||
|
C CreateOleObject я сам разобрался нужно всего в раздел модулей добавить модуль ComObj
НУ а теперь на счет Код:
procedure TForm1.Button1Click(Sender: TObject);
var WordApp, doc,sel_,cell:Variant; p,ChisloD:string; i:integer;
fil:OLEVariant; Cel1,Cel2:Variant;
begin
try
WordApp:=CreateOleObject('Word.Application');//
doc:=WordApp.Documents.open('E:\Borland Studio Projects\ww\Shablon PasportK.doc');
WordApp.Selection.GoTo(-1,,,'Inv');//переход к закладке
WordApp.Selection.TypeText(Edit1.Text);//вставляем то, что нам надо
except
end;
end;Inv это метка из документа. Только помогите ламеру как эту метку вставить в мой шаблон и что такое -1 Пожалуйста помогите разобраться |
|
#5
|
|||
|
|||
|
Чтобы вставить метку надо: Установить курсор в нужную точку на листе Word - меню Вставка -закладка - в верхнем окне введи имя закладки - нажми добавить, и всё.
|
|
#6
|
||||
|
||||
|
Gmen спасибо !
Но у меня еще вопрос после нажатия кнопки выскакивает ошибочка ![]() на строке Код:
doc:=WordApp.Documents.open('1.doc');Код:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, OleServer, WordXP, ComObj;
type
TForm1 = class(TForm)
Edit1: TEdit;
Button1: TButton;
WordApplication1: TWordApplication;
WordDocument1: TWordDocument;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
WordApp, doc :Variant;
begin
WordApplication1.Connect;
try
WordApp:=CreateOleObject('WordApplication');//
doc:=WordApp.Documents.open('1.doc');
WordApp.Selection.GoTo(-1,,,'paskal1');//переход к закладке
WordApp.Selection.TypeText(Edit1.Text);//вставляем то, что нам надо
except
end;
end;
end.подскажите плиз как устранить єту ошибку, может какой то модуль не подключен. Заранее спасибо и прошу прощение за столь много вопросов |
|
#7
|
||||
|
||||
|
Проблема решена!
моя проблема была в том что Код:
WordApp:=CreateOleObject('WordApplication');Код:
WordApp:=CreateOleObject('Word.Application'); |