Вывод переменной с переносами строк в таблицу WORD
|
Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Andrey@Na Участник
Вступление в Клуб: 11.09.2009
|
Вт Мар 22, 2011 14:42  Вывод переменной с переносами строк в таблицу WORD |
|
Полезность: Нет оценки
|
Доброго времени суток.
Такой вопрос.
Есть шаблон WORD, в нём таблица, в одной из ячеек таблицы переменная, в эту переменную необходимо передать Фамилию, Имя, Отчество таким образом, что бы в этой ячейке каждое новое ФИО начиналось с новой строки . Пробовал следующий вариант :
V_SIGN1 := V_SIGN1||pers.[FASE].[NAME]||CR$||LF$;
Если текст не в рамках таблицы работает чудесно - каждое новое ФИО с новой строки, но как только помещаю его в переменную, находящуюся в ячейке таблицы - перестаёт работать . Какие возможны решения ? Хотелось бы иметь некую универсальность в получении такой строки, т.к. операция работает на несколько разных шаблонов . |
|
 |
Alexsey Эксперт
Вступление в Клуб: 06.09.2007
|
Вт Мар 22, 2011 15:46  Re: Вывод переменной с переносами строк в таблицу WORD |
|
Полезность: Нет оценки
|
Andrey@Na пишет: | Доброго времени суток.
Такой вопрос.
Есть шаблон WORD, в нём таблица, в одной из ячеек таблицы переменная, в эту переменную необходимо передать Фамилию, Имя, Отчество таким образом, что бы в этой ячейке каждое новое ФИО начиналось с новой строки . Пробовал следующий вариант :
V_SIGN1 := V_SIGN1||pers.[FASE].[NAME]||CR$||LF$;
Если текст не в рамках таблицы работает чудесно - каждое новое ФИО с новой строки, но как только помещаю его в переменную, находящуюся в ячейке таблицы - перестаёт работать . Какие возможны решения ? Хотелось бы иметь некую универсальность в получении такой строки, т.к. операция работает на несколько разных шаблонов . |
переменная какого типа? попробуйте сделать переменную типа MEMO данный тип как раз поддерживает перенос строк
скорее всего если тип данных СТРОКА то, символы возврата каретки и прокрутки строки не работают. Правда в пакете RTL про эти константы подробного описания в документации нет _________________ всегда есть как минимум 2 выхода
Последний раз редактировалось: Alexsey (Вт Мар 22, 2011 15:55), всего редактировалось 1 раз |
|
 |
lexus Профи
Вступление в Клуб: 28.09.2007
|
Вт Мар 22, 2011 15:55   |
|
Полезность: Нет оценки
|
и в Word в свойствах самой закладки - тоже тип поля можно выставлять, может с этим попробовать. |
|
 |
kit83rd Участник со стажем
Вступление в Клуб: 05.02.2010
|
Ср Мар 23, 2011 09:58   |
|
Полезность: Нет оценки
|
Пиши сразу в ячейку таблицы.
Только нужно экранировать символ переноса каретки
Код: |
v_text := Replace(Replace(Replace(text, '"', '""'), chr(10), '"&chr(10)&"'), chr(13), '"&chr(13)&"');
|
|
|
 |
Andrey@Na Участник
Вступление в Клуб: 11.09.2009
|
Ср Мар 23, 2011 12:22   |
|
Полезность: 1
|
Всем спасибо за помощь.
Проблема крылась в следующем, в клиент-скритле использовалась следующая схема :
W.FormFields("Право_1_подписи").Result = V_SIGN1
А в [RUNTIME].[MSWORD_SCRIPT] "Библиотека VBA функций для печати в WORD" написано следующее
"' присвоение FormField.Result = x не работает со строками > 255 символов
' также это присвоение некорректно отображает в Word'е символ vbLF (10)"
Два первых предложенных варианта не прошли, последний не проверял, т.к. уже решил проблему путём использования в клиент-скрипте следующей схемы :
Call SetAllFormFields(WrdApp, W).
Ещё раз спасибо. |
|
 |
|
|
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах
|
|