Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.05.2014, 14:14   #1
Kira91
Пользователь
 
Регистрация: 22.02.2014
Сообщений: 12
Восклицание помогите с сохранением файла!

Помогите пожалуйста)Вопрос не сложный но не знаю как правильно делать
Открываем шаблон вордовского документа,далее заполняются закладки.
Суть проблемы-1.когда шаблон открывается вылезает окно(открыть только для чтения),можно ли чтоб ничего не вылезало?))
2.Нужно сохранить заполненый документ по пути GetCurrentDir()+'resurse\шаблон\mem o.txt' в формате txt желательно,и чтоб сэйв диалог не вылазил,а сразу файл сохранялся

Код:

///////////////////////////
  /////////////////////////////////////////////
  /////////////////////////////////////////////

  begin

  Od := OpenDialog1;
  Od.Filename:= GetCurrentDir()+'\resurse\шаблон\shabl.doc';
  try
    wdApp := CreateOleObject('Word.Application');
  except
    ShowMessage('не удалось запустить MS Word.');
    Exit;
  end;


  //ссылка на коллекцию документов.
  wdDocs := wdApp.Documents;
  //Попытка открыть шаблон
  wdDoc := wdDocs.Open(FileName:=od.FileName);
  //подключение закладок.
  wdBms := wdDoc.Bookmarks;
  //Замена закладок значениями
     begin
  SetBmText(wdBms, 'q1', floattostr(q1));
  SetBmText(wdBms, 'q2', floattostr(q2));
  SetBmText(wdBms, 'q3', floattostr(q3));
  SetBmText(wdBms, 'q4', floattostr(q4));
  SetBmText(wdBms, 'q5', floattostr(q5));
  SetBmText(wdBms, 'q6', floattostr(q6));
  SetBmText(wdBms, 'q7', floattostr(q7));
  SetBmText(wdBms, 'q8', floattostr(q8));
  SetBmText(wdBms, 'q9', floattostr(q9));
  SetBmText(wdBms, 'q10', floattostr(q10));
  SetBmText(wdBms, 'P1', floattostr(P1));
  SetBmText(wdBms, 'P12', floattostr(P1));
  SetBmText(wdBms, 'P13', floattostr(P1));
  SetBmText(wdBms, 'nopt',floattostr(n));
  SetBmText(wdBms, 'nopt2',floattostr(n));
  SetBmText(wdBms, 'Qs', floattostr(Qs));
  SetBmText(wdBms, 'Qsras', floattostr(Qs));
  SetBmText(wdBms, 'qn', floattostr(qn));
  SetBmText(wdBms, 'qn2', floattostr(qn));
  SetBmText(wdBms, 'V1', V1);
  SetBmText(wdBms, 'V2', V2);
  SetBmText(wdBms, 'V3', V3);
  SetBmText(wdBms, 'Pnm', Pnm);
  SetBmText(wdBms, 'Tip1', Form1.ADOQuery2.FieldByName('tip').AsString);
  SetBmText(wdBms, 'rabV1',Form1.ADOQuery2.FieldByName('rabV').AsString);
  SetBmText(wdBms, 'rabV2',Form1.ADOQuery2.FieldByName('rabV').AsString);
  SetBmText(wdBms, 'nom_dav1',Form1.ADOQuery2.FieldByName('davlenie_na_vih_Nom').AsString);
  SetBmText(wdBms, 'nopt3',  Form1.ADOQuery2.FieldByName('Chastota_vraschenia_Nom').AsString);
  SetBmText(wdBms, 'nopt4',  Form1.ADOQuery2.FieldByName('Chastota_vraschenia_Nom').AsString);
  SetBmText(wdBms, 'kpd_ob',  Form1.ADOQuery2.FieldByName('KPD_ob').AsString);
  SetBmText(wdBms, 'kpd_ob2',  Form1.ADOQuery2.FieldByName('KPD_ob').AsString);
  SetBmText(wdBms, 'kpd_poln', Form1.ADOQuery2.FieldByName('KPD_poln').AsString);
  SetBmText(wdBms, 'Qfn',  floattostr(Qfn));
 end;
 
    form1.ADOQuery3.Close;
     form1.ADOQuery2.Close;


  
  wdApp.Visible := True;

Последний раз редактировалось Stilet; 28.05.2014 в 14:24.
Kira91 вне форума Ответить с цитированием
Старый 28.05.2014, 14:41   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
и чтоб сэйв диалог не вылазил,а сразу файл сохранялся
Код:
wdDocs.SaveAs(FileName:=Тут имя файла);
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 28.05.2014, 15:23   #3
Kira91
Пользователь
 
Регистрация: 22.02.2014
Сообщений: 12
По умолчанию

Ошибка :Project Project.exe raised exception class EOleError with message 'metod'SaveAs'not supported by automation object'.Process stopped.Use Step or Run to continue
Kira91 вне форума Ответить с цитированием
Старый 28.05.2014, 15:38   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Значит надо открыть хелп твоего Оффиса по VBA и посмотреть там класс Document. Какие у него методы есть. Они могли меняться от версии оффиса.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите с сохранением файла Денис1 Общие вопросы Delphi 2 23.03.2014 14:23
Проблема с сохранением файла mainunit.pas Alginsky Общие вопросы Delphi 20 09.02.2013 21:28
(VB) Проблема с сохранением файла phantom4eg Помощь студентам 0 03.06.2009 23:16
Проблемы с сохранением файла через SaveDialog Волк Общие вопросы Delphi 4 05.02.2009 04:27
Ошибка с сохранением файла на съёмном носителе в Office XP Torvald64 Microsoft Office Word 1 29.12.2008 20:50