Модераторы: MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Word, шаблон, вставить таблицу 
:(
    Опции темы
AlexP11223
Дата 24.5.2012, 18:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 52
Регистрация: 11.10.2011

Репутация: нет
Всего: нет



Есть шаблон документа word (.dot, при открытии вроде бы все работает так же, как и если бы просто обычный документ). Надо вставить в определенное место таблицу с некими данными (место отмечено $TABLE1$, т.е. надо заменить эту строку). 

Как это сделать? Если просто заменить строку на другую  строку, то вроде есть решения, а вот таблицу...

Код открытия и т.п. на всякий случай:

Код

const
  DOC_TEMPLATE = 'template.dot';
  wdFormatDocument = 0;

var
  WordApp: OleVariant;

implementation


// Запускает экземпляр Word (и делает невидимым)
procedure RunWord;
begin
  WordApp := CreateOleObject('Word.Application');
  WordApp.Visible := False;;
end;


// Закрывает Word
procedure StopWord;
begin
  WordApp.Quit;
  WordApp := Unassigned;
end;


// Cохраняет активный документ Word
// возвращает false если не удалось сохранить
function SaveDoc(FileName: TFileName):Boolean;
begin
  WordApp.ActiveDocument.SaveAs(FileName, wdFormatDocument);
  if WordApp.ActiveDocument.Saved then
    Result := True
  else
   Result := False;
end;


procedure MakeDoc(FileName: TFileName);
begin
  RunWord;

  WordApp.Document.Open(DOC_TEMPLATE);

  // сохранение файла
  if not SaveDoc(FileName) then
  begin
    Application.MessageBox('Не удалось сохранить документ.', 'Ошибка', MB_OK + 
      MB_ICONSTOP);
    exit;
  end;

  StopWord;
end;

PM WWW Skype   Вверх
MetalFan
Дата 24.5.2012, 19:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Аццкий Сотона
****


Профиль
Группа: Комодератор
Сообщений: 3815
Регистрация: 2.10.2006
Где: Moscow

Репутация: 3
Всего: 128



Цитата(Omfgnoob123 @  24.5.2012,  18:39 Найти цитируемый пост)
Как это сделать?

открываешь ворд, старуешь запись макроса, вставляешь таблицу, останавливаешь запись макроса, смотришь код макроса, дублируешь(адаптируешь) его у себя в приложении.


--------------------
There are always someone smarter than you...
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: ActiveX/СОМ/CORBA"

Rrader
Girder

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


  • Литературу по Delphi обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Delphi
  • Вопросы по SQL и вопросы по базам данных, не связанные с Delphi, задавать здесь

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Rrader, Girder.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: ActiveX/СОМ/CORBA | Следующая тема »


 




[ Время генерации скрипта: 0.0598 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.