|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Word: как убрать знак абзаца?
В качестве переменной используется содержимое ячейки таблицы ворд:
Код:
date2:=Tbl.Cell(j, 3).Range.Text; Код:
ran2:=MSWord.ActiveDocument.Bookmarks.item('ФиналДата').range; ran2.insertafter(date2); Проблемма в том, что в date2 после содержимого ячейки появляется знак перехода на новую строку (абзац) и строка с закладкой после выполнения команды разбивается на две. Как избавиться от этого знака? |
#2
|
||||
|
||||
Вырежи его из полученной строки и всего делов.
Некоторые программисты настолько ленивы, что сразу пишут рабочий код. Если вас наказали ни за что - радуйтесь: вы ни в чем не виноваты. |
#3
|
||||
|
||||
попробуй так
Код:
ran2.insertafter(TrimRight(date2)); |
#4
|
|||
|
|||
Цитата:
Попробовал. Получилось. Спасибо. И еще два вопроса: 1. При выполнении команды вставки текста на закладке несколько раз - появляется соответствующее число вставок. Как стереть предыдущую вставку перед вставкой новой? В моих экспериментах стирается знак закладки, которым выставлен на пробеле, что не есть хорошо. 2. Как одной командой очистить содержимое ячейки в таблице, где содержится переменное число знаков? Заранее благодарю. |
#5
|
||||
|
||||
на второй вопрос такой ответ
Код:
MSWord.ActiveDocument.tables.item(2).cell(2,2).range.delete; а с первым вопросом покажи, что ты делаешь |
#6
|
|||
|
|||
Цитата:
Экспериментирую, примерно, в таком плане: Код:
ran1.insertafter(TrimRight(date1)); ran1.delete(1,4); ran1.insertafter(TrimRight(date1)); Последний раз редактировалось cadil, 16.07.2009 в 09:48. |
#7
|
||||
|
||||
У тебя есть закладка "ФиналДата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. |