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

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

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 25.07.2011, 16:13   #1
DoubleTrouble
Пользователь
 
Регистрация: 26.05.2010
Сообщений: 32
Восклицание Созданиние и работа с документом Word'a в Delphi

Сколько сил и мучений положил на эту казалось бы простую проблему.

Суть:
Надо создать переменную, объект(хоть что то) чтобы можно было открыть Word документ в Делфи, а потом его редактировать. Не надо пожалуйста ссылок вроде этой, потому что сколько я над этим не бился не получается. А вот почему: бывает мне пишет ошибку уже в строке "uses ... , Office_Tlb, word_tlb;" сейчас я вроде бы справился, но теперь делфи не может откомпилировать Word_tblю В строке 34708 "IUnknown(TVarData(Params[0]).VPointer) as Range {const Range}," появляется ошибка "[Error] Word_TLB.pas(34708): Operator not applicable to this operand type"

Устал от этого способа. До этого в Екселе нашёл вот так вот открывать и работать с документом

Код:
// Обьект EXCEL
  XL := CreateOleObject('Word.Application');
  // Чтоб не задавал вопрос о сохранении документа
  XL.DisplayAlerts := false;
  // новый документ
  //XL.WorkBooks.Add;
  // или загружаем его
  XL.WorkBooks.Open(MyDir + '\akt.xls');
  { MyDir - глобальная переменная типа string в неё помещаем путь
  к каталогу запуска нашей програмы по событию FormCreate
Но в ворде у меня не получается открыть документ. Пробовал

Код:
XL.Document.Open(MyDir + '\akt.doc');
Но появляется ошибка. Помогите сделать переменную как во втором примере чтобы нормально файлы открывала программа
DoubleTrouble вне форума Ответить с цитированием
Старый 25.07.2011, 17:51   #2
xakkkkker
Форумчанин
 
Аватар для xakkkkker
 
Регистрация: 15.12.2007
Сообщений: 226
По умолчанию

Вот примерчик.
И еще прочитай книгу http://books.tr200.ru/v.php?id=40499
Вложения
Тип файла: rar Forum.rar (13.2 Кб, 33 просмотров)
xakkkkker вне форума Ответить с цитированием
Старый 25.07.2011, 18:20   #3
roperd
Пользователь
 
Регистрация: 14.07.2011
Сообщений: 44
Радость Ответ

Просто так открыть фрят-ли получиться, но можно при загрузке из Ворда текст пере конвертировать в RTF, вот код:
Код:
procedure Button1Click(Sender: TObject);
var
Word: OleVariant;
Doc: OleVariant;
begin
try
Word := GetActiveOleObject('Word.Application');
 except
Word := CreateOleObject('Word.Application');
begin
Word.Documents.Open(OpenDialog1.FileName);
Doc  := Word.ActiveDocument;
OpenDialog1.FileName := ChangeFileExt(OpenDialog1.FileName, '.rtf');
Doc.SaveAs(OpenDialog1.FileName, wdFormatRTF);
Word.ActiveDocument.Close(0, EmptyParam, EmptyParam);
Word.Quit(EmptyParam, EmptyParam, EmptyParam);
Doc := VarNull;
Word := VarNull;
begin
with RichEdit1 do
begin
   RichEdit1.Lines.LoadFromFile(OpenDialog1.FileName);
   RichEdit1.SelStart := 0;
   RichEdit1.Modified := False;
 end;
end;
end;
end;
end;

________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE] (это кнопочка с решёточкой #)
Не забывайте об этом!
Модератор.

Последний раз редактировалось Serge_Bliznykov; 25.07.2011 в 21:52.
roperd вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с документом ворд через дельфи Toni Milano Помощь студентам 1 16.12.2010 11:29
Проблема с вордовским документом Пуська Помощь студентам 1 03.12.2010 13:11
работа с документом(html, chm) borik120 Microsoft Office Excel 3 25.02.2010 21:43
Как сделать оформление как у Word'a 2007+ TwiX Общие вопросы Delphi 15 26.12.2009 21:42
Работа с документом Word из Delphi kate4ka Общие вопросы Delphi 2 18.02.2008 12:12