Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 10.07.2009, 09:41
cadil cadil вне форума
Начинающий
 
Регистрация: 24.10.2007
Сообщения: 169
Репутация: 10
По умолчанию Word: как убрать знак абзаца?

В качестве переменной используется содержимое ячейки таблицы ворд:
Код:
date2:=Tbl.Cell(j, 3).Range.Text;
Это значение вставляется на закладке
Код:
ran2:=MSWord.ActiveDocument.Bookmarks.item('ФиналДата').range;
ran2.insertafter(date2);
.
Проблемма в том, что в date2 после содержимого ячейки появляется знак перехода на новую строку (абзац) и строка с закладкой после выполнения команды разбивается на две. Как избавиться от этого знака?
Ответить с цитированием
  #2  
Старый 10.07.2009, 11:36
Аватар для Aristarh Dark
Aristarh Dark Aristarh Dark вне форума
Модератор
 
Регистрация: 07.10.2005
Адрес: Москва
Сообщения: 2,906
Версия Delphi: Delphi XE
Репутация: выкл
По умолчанию

Вырежи его из полученной строки и всего делов.
__________________
Некоторые программисты настолько ленивы, что сразу пишут рабочий код.

Если вас наказали ни за что - радуйтесь: вы ни в чем не виноваты.
Ответить с цитированием
  #3  
Старый 10.07.2009, 12:31
Аватар для pesi
pesi pesi вне форума
Активный
 
Регистрация: 12.09.2008
Сообщения: 275
Репутация: 43
По умолчанию

попробуй так

Код:
ran2.insertafter(TrimRight(date2));
Ответить с цитированием
  #4  
Старый 15.07.2009, 09:45
cadil cadil вне форума
Начинающий
 
Регистрация: 24.10.2007
Сообщения: 169
Репутация: 10
По умолчанию

Цитата:
Сообщение от pesi
попробуй так
Код:
ran2.insertafter(TrimRight(date2));

Попробовал. Получилось. Спасибо.
И еще два вопроса:
1. При выполнении команды вставки текста на закладке несколько раз - появляется соответствующее число вставок. Как стереть предыдущую вставку перед вставкой новой? В моих экспериментах стирается знак закладки, которым выставлен на пробеле, что не есть хорошо.
2. Как одной командой очистить содержимое ячейки в таблице, где содержится переменное число знаков?
Заранее благодарю.
Ответить с цитированием
  #5  
Старый 15.07.2009, 16:23
Аватар для pesi
pesi pesi вне форума
Активный
 
Регистрация: 12.09.2008
Сообщения: 275
Репутация: 43
По умолчанию

на второй вопрос такой ответ

Код:
MSWord.ActiveDocument.tables.item(2).cell(2,2).range.delete;

а с первым вопросом покажи, что ты делаешь
Ответить с цитированием
  #6  
Старый 16.07.2009, 09:42
cadil cadil вне форума
Начинающий
 
Регистрация: 24.10.2007
Сообщения: 169
Репутация: 10
По умолчанию

Цитата:
Сообщение от pesi
на второй вопрос такой ответ

Код:
MSWord.ActiveDocument.tables.item(2).cell(2,2).range.delete;

а с первым вопросом покажи, что ты делаешь

Экспериментирую, примерно, в таком плане:
Код:
    ran1.insertafter(TrimRight(date1));
    ran1.delete(1,4);
    ran1.insertafter(TrimRight(date1));

Последний раз редактировалось cadil, 16.07.2009 в 09:48.
Ответить с цитированием
  #7  
Старый 17.07.2009, 09:31
Аватар для pesi
pesi pesi вне форума
Активный
 
Регистрация: 12.09.2008
Сообщения: 275
Репутация: 43
По умолчанию

У тебя есть закладка "ФиналДата1" жамкни два раза пробел и добавь еще одну закладку "ФиналДата2".

Код:
var
MSWord:OLEvariant;
begin
MsWord := CreateOleObject('Word.Application');
MsWord.Visible := True;
MSWord.Documents.Open(ExtractFilePath(ParamStr(0))+'2.doc');
try
 MSWord.Activate;
   try
         MSWord.Selection.GoTo(-1, unAssigned, unAssigned, 'ФиналДата1');
         MSWord.Selection.Extend;
         MSWord.Selection.GoTo(-1, unAssigned, unAssigned, 'ФиналДата2');
         MSWord.Selection.MoveLeft(1, 1);
        MSWord.Selection.text:='888'; //твой текст
        except
       ShowMessage('Ошибка при поиске не нашлось нужной.....');
      end;
    except
  ShowMessage('Ошибки при активации документа!');
end;
end;

Последний раз редактировалось pesi, 17.07.2009 в 09:45.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 22:07.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter