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

Вниз

Отчёт   Найти похожие ветки 

 
wer   (2004-04-05 14:41) [0]

Как сделать чтобы при нажатии на кнопку, отчёт выводился в Word
по определённому шаблону который установлен заранее только данные автоматически вставляются в положенные им места. И как сделать такой шаблон?


 
infom ©   (2004-04-05 14:52) [1]

просто выделяешь текст куда хочешь вставить и встевляешь, формат остается таким-же


 
VLAD-MAL   (2004-04-05 15:32) [2]



wdApp : TWordApplication;
wdDoc : TWordDocument;

...

var ItemIndex,
NewTemplate, TemplateFileName, DocumentType,
VisibleDoc : OleVariant;
tmpwdDoc : TWordDocument;
begin
try
 try                  // Попытка коннекта
   if wdApp.Application <> nil then;
    if wdApp.Documents.Count = 0 then
       wdApp.Connect;
   ItemIndex := wdApp.Documents.Count + 1;
   TemplateFileName := ExtractFilePath(Application.ExeName)+ "Шаблон.dot";
   NewTemplate := False;
   DocumentType := wdTypeDocument;
   VisibleDoc := False;
    wdApp.Documents.Add(TemplateFileName, NewTemplate, DocumentType, VisibleDoc );

   wdDoc.ConnectTo(wdApp.Documents.Item(ItemIndex));
 except
   on E : Exception do begin
     ShowMessage("Ошибка активизации приложения Microsoft Word. "+
      E.Message);
     if Assigned(wdApp) then
       if (wdApp.Documents.Count > 0) then begin
         wdApp.AutoQuit := True; // Пусть не зависает фигня в системе!
...
       end;
    exit
   end;
 end;

 try
   BuildReport;
 except
   on E : Exception do begin
     ShowMessage("Ошибка создания отчета в Microsoft Word. "+
      E.Message);
     if Assigned(wdApp) then
       if (wdApp.Documents.Count > 0) then
         wdApp.AutoQuit := True; // Пусть не зависает фигня в системе!
    exit
   end;
 end

finally
...
end;

end;

procedure TForm1.BuildReport;
begin
 if not wdApp.Visible then
 wdApp.Visible := True
... Здесь коцаем документ, созданный из шаблона...
end;



Удачи


 
Valerian   (2004-04-05 15:51) [3]

Я использую WordApplication.
Var V:Variant;
dot,dot2:Olevariant;
Запустить Word (при том он следит за экземплярами, если экземпляр Word имеется, активизирует, если нет запускает Word):
Шаблон готовлю на Word-е (dot файл).
    dot:= имя файла шаблона
    dot2:=False;
    Try
    V:=GetActiveOLEObject("Word.Application")
    Except
    V:=CreateOLEObject("Word.Application")
    end;
    V.Visible:=True;
    V.Documents.Add(dot,dot2);
В принципе команды для Word-а можно посмотреть с помощью макросов. Все операции записываешь в макросы. А с макросов надо переложить в Delphi.
Примерно в таком виде(Поиск слов в Word-e):
V.selection.Find.Text:= "Фамилия_ Имя_ Отчество_";
V.Selection.Find.Execute;
V.Selection.Typetext("Иванов");



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

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

Наверх




Память: 0.45 MB
Время: 0.038 c
1-1081350822
BlackLord2003
2004-04-07 19:13
2004.04.25
Код символа!


7-1077698501
LK
2004-02-25 11:41
2004.04.25
Измерение в микросекундах


3-1080226630
Balkon
2004-03-25 17:57
2004.04.25
Фильтрация по вхождению заданных символов в любое место строки.


3-1080640978
Виктор
2004-03-30 14:02
2004.04.25
Description таблиц базы Firebird


1-1081405239
prorok2
2004-04-08 10:20
2004.04.25
Изменение картинки при нахождении над ним курсора мыши





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский