|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
11.04.2013, 17:50 | #1 |
Пользователь
Регистрация: 21.05.2010
Сообщений: 56
|
Работа с Word.
В общем запарился я с работой в Word средствами Делфей. Нужно сформировать небольшой отчет из таблицы.
Порыскав в интернете я нашел вариант с "оле" объектами. Собственно сам вопрос: 1) Как сделать Разрыв на новую страницу 2)Как выровнять по центру строчку 'Название отчета' 3) Может быть "Оле" уже давно устарело и нужно это все делать как то по другому? Код:
|
12.04.2013, 09:55 | #2 | ||
Тот ещё
Старожил
Регистрация: 14.11.2007
Сообщений: 2,242
|
Цитата:
Цитата:
Код:
Это экспортированная библа типов из Word'а. Там описаны нужные интерфейсы, типы и константы. Последний раз редактировалось Sibedir; 12.04.2013 в 09:59. |
||
12.04.2013, 11:08 | #3 |
Участник клуба
Регистрация: 09.11.2007
Сообщений: 1,762
|
Через ОЛЕ очень даже удобно работать. А самое главное, что если нет документации, то всегда можно открыть ворд, записать макрос во время форматирования нужной Вам части текста, открыть макрос и потом это всё перенести в код Delphi и всё будет идеально работать.
|
12.04.2013, 11:43 | #4 | |
Тот ещё
Старожил
Регистрация: 14.11.2007
Сообщений: 2,242
|
Цитата:
Если вести речь: оле, не оле, то особо вариантов нет. Если не хотите вылезать за рамки Delphi, то оле. Вариантов-то особо нет. Если не оле, то макросы на VBA. Так, еще где-то дома валяется примерчик использования COM без OleVariant. Там не Word, но принцип тот же. Работаем с COM-интерфейсом напрямую, а сам интерфейс берем из приведенного файла. Вобщем, вечером гляну. Последний раз редактировалось Sibedir; 12.04.2013 в 12:41. |
|
12.04.2013, 13:20 | #5 |
Форумчанин
Регистрация: 22.02.2010
Сообщений: 912
|
Попробуйте воспользоваться модулем для MS Office
|
12.04.2013, 14:16 | #6 |
Пользователь
Регистрация: 21.05.2010
Сообщений: 56
|
То же самое происходит и с InsertBreak. |
12.04.2013, 16:02 | #7 |
Особый статус
Участник клуба
Регистрация: 24.11.2008
Сообщений: 1,535
|
В место разрыва (где курсор) введите символ с кодом 12.
Вручную это делается набором на цифровой клавиатуре 012 с зажатым левым альтом. На VBA этому соответствует Код:
Формула 1 (календарь чемпионата-2016): 26.11.2016 15:55 — Абу-Даби: http://ru.wikipedia.org/wiki/Гран-при_Абу-Даби — (квалификация)! Эфир: http://lion-tv.com/28-match-tv.html
|
12.04.2013, 16:03 | #8 |
Участник клуба
Регистрация: 09.11.2007
Сообщений: 1,762
|
Всё взял чисто как и писал выше из самого ворда и его справки (вернее справки VBA)
Код:
Последний раз редактировалось FaTaL; 12.04.2013 в 16:05. |
14.04.2013, 06:00 | #9 |
Тот ещё
Старожил
Регистрация: 14.11.2007
Сообщений: 2,242
|
Ну вот и вечер наступил
1. Импортируем библиотеку типов Word'а в Delphi: http://yandex.ru/yandsearch?text=%D0...0delphi&lr=197. Далее можно просто использовать 3 файла: Office_TLB.pas, VBIDE_TLB.pas и Word_TLB.pas (MS_Office.zip). 2. Немножко подправляем файл Word_TLB.zip. 3. Запускаем Word. Включаем запись макрова "●". Делаем что нужно. Завершаем запись макроса "■". Смотрим, что получилось: Код:
Код:
Принципиально, отличий от варианта FaTaL здесь нет. Отличие одно и оно заключается в использовании уже готового пригодного для работы с COM-объектом Word'а интерфейса. Хотя на первых этапах может помочь существенно. Последний раз редактировалось Sibedir; 14.04.2013 в 06:08. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Работать в Word, не открывая документы (работа с закрытыми документами Word) | Георгиевич | Microsoft Office Word | 10 | 07.09.2009 11:19 |
работа с Word | arv | БД в Delphi | 13 | 24.05.2009 10:39 |
Работа с Word | Ky3Heu, | Общие вопросы Delphi | 1 | 20.05.2009 12:06 |
работа с WORD | Shaitan63 | Помощь студентам | 9 | 14.10.2008 07:25 |
Работа с Word | Shuraken | Общие вопросы Delphi | 2 | 18.09.2007 10:57 |