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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 14.08.2009, 17:42   #1
Arxangelname
Пользователь
 
Аватар для Arxangelname
 
Регистрация: 12.03.2009
Сообщений: 30
По умолчанию помогите в word-е

Народ помогите не знаю как можно делать отчеты в ворде для сохранения и распечатки

я тут кое что накалякал не поможете

procedure TForm1.Button1Click(Sender: TObject);
var
wa,wd: OleVariant;
s: string;
par: Paragraphs;
p: Paragraph;
begin
wa:= CreateOleObject('word.Application') ;
wa.visible:= true;
wd:= wa.documents.add;
wd.Range.insertbefore(Edit1.Text);

wd.Range.InsertBefore(Edit2.Text);
end;

только он тут подрят пишет а мне надо edit2 на другой строке
Arxangelname вне форума Ответить с цитированием
Старый 14.08.2009, 19:12   #2
Neeter
Форумчанин
 
Аватар для Neeter
 
Регистрация: 22.02.2009
Сообщений: 875
По умолчанию

Вот это - перевод каретки на новую строку:
Код:
wd.Selection.TypeText(#13#10);
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство.
Neeter вне форума Ответить с цитированием
Старый 14.08.2009, 20:25   #3
Arxangelname
Пользователь
 
Аватар для Arxangelname
 
Регистрация: 12.03.2009
Сообщений: 30
По умолчанию

Цитата:
Сообщение от Neeter Посмотреть сообщение
Вот это - перевод каретки на новую строку:
Код:
wd.Selection.TypeText(#13#10);
Не работает но спасибо за ответ
Ошибка в selection
Arxangelname вне форума Ответить с цитированием
Старый 14.08.2009, 20:29   #4
psycho-coder
Участник клуба
 
Аватар для psycho-coder
 
Регистрация: 06.04.2009
Сообщений: 1,524
По умолчанию

Так попробуйте
Код:
wd.Range.InsertBefore(Edit2.Text + #13#10);
psycho-coder вне форума Ответить с цитированием
Старый 14.08.2009, 20:33   #5
Sasha_Smirnov
Особый статус
Участник клуба
 
Аватар для Sasha_Smirnov
 
Регистрация: 24.11.2008
Сообщений: 1,535
По умолчанию

Используй прямо в ворде код VBA (по альт-F11).

Пришли пример в соответствующую ветку форума (Microsoft Office Word).
Sasha_Smirnov вне форума Ответить с цитированием
Старый 14.08.2009, 20:40   #6
Neeter
Форумчанин
 
Аватар для Neeter
 
Регистрация: 22.02.2009
Сообщений: 875
По умолчанию

А, немного перепутал, selection есть только у wa, а не wd.

Наверно, надо сделать примерно вот так:
Код:
wd.Range.insertbefore(Edit1.Text + #13#10);

wd.Range.InsertAfter(Edit2.Text);
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство.
Neeter вне форума Ответить с цитированием
Старый 15.08.2009, 08:25   #7
Arxangelname
Пользователь
 
Аватар для Arxangelname
 
Регистрация: 12.03.2009
Сообщений: 30
По умолчанию

Цитата:
Сообщение от Neeter Посмотреть сообщение
А, немного перепутал, selection есть только у wa, а не wd.

Наверно, надо сделать примерно вот так:
Код:
wd.Range.insertbefore(Edit1.Text + #13#10);

wd.Range.InsertAfter(Edit2.Text);
Спасибо большое теперь все работает но почему то он edit 2 или чтобы я не добавлял самое последнее всегда находится в верху строки а 1 в низу почему так получается
Arxangelname вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Word 2007 глюк - помогите maxichox Microsoft Office Word 13 04.03.2015 12:20
Помогите запустить глючащий макрос для WORD 2003 Gamekowal Microsoft Office Word 2 07.01.2010 00:08
Помогите с написанием макроса для Word,который преобразует кодировку текста из указанной в указанную Сотников Роман Помощь студентам 6 30.05.2009 18:34
Как вычислять значения вне таблицы WORD, с использованием данных из таблицы WORD prikolist Microsoft Office Word 6 21.11.2008 13:17