Текущее время: Вс, июл 20 2025, 18:31

Часовой пояс: UTC + 3 часа


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 8 ] 
Автор Сообщение
 Заголовок сообщения: Удалить часть текста WORD
СообщениеДобавлено: Чт, апр 28 2011, 15:36 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Пн, фев 11 2008, 11:54
Сообщения: 359
Откуда: Воронеж
Пол: Мужской
Добрый день. Есть необходимость удалить часть текста WORD без использования макросов. Подскажите как это сделать.
Добавить текст в шаблон может и подходит, но после этого к этой части текста нужно будет применить сброс форматирования(не умею), а потом (возможно, надо тестить) применить некоторое форматирование. Мне видится этот путь сложнее, поэтому уж лучше подскажите как удалить.

_________________
Hормальные люди делают вещи намного более безумные чем всё, что делают сумасшедшие (c) С.Лем


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Удалить часть текста WORD
СообщениеДобавлено: Пт, апр 29 2011, 05:48 
Специалист
Специалист

Зарегистрирован:
Ср, дек 22 2010, 19:49
Сообщения: 114
XXX_:) написал:
Добрый день. Есть необходимость удалить часть текста WORD без использования макросов. Подскажите как это сделать.
Добавить текст в шаблон может и подходит, но после этого к этой части текста нужно будет применить сброс форматирования(не умею), а потом (возможно, надо тестить) применить некоторое форматирование. Мне видится этот путь сложнее, поэтому уж лучше подскажите как удалить.

ДД! Через использование OLE. Закладки в шаблоне (при необходимости). Поиск/Выделение текста + удаление. Не оно?

_________________
Человек готов работать 24 часа в сутки, лишь бы ничего не делать.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Удалить часть текста WORD
СообщениеДобавлено: Пт, апр 29 2011, 06:09 
Младший специалист
Младший специалист

Зарегистрирован:
Вт, авг 05 2008, 19:46
Сообщения: 96
Откуда: С Урала
Чисто теоретические советы - документ содавать с полями WORD и редактировать его через I_OI_DOCUMENT_PROXY (см. SAPRDEMOOFFICEINTEGRATION и SAPRDEMOFORMINTERFACE ).
Но проще все-таки через макрос через тот же класс можно стартануть его либо через OLE - к стати его можно и не через файл передавать - а импортировать из текстовой строки
Code:
Application.VBE.ActiveVBProject.VBComponents("MyModule").CodeModule.AddFromString "Dim intJack As Integer"

( это из VBAшного примера - советы ведь теоретические )


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Удалить часть текста WORD
СообщениеДобавлено: Пт, апр 29 2011, 07:28 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Пн, фев 14 2011, 07:26
Сообщения: 80
Откуда: Альфа Центавра
Пол: Мужской
NeMurometz написал(а):
Через использование OLE.

Конечно можно писать через всякие create object, get property of, и flush итп, но
1) Код надо писать самому наобум вслепую.
2) Надо передавать даже Optional параметры для вызова методов, так как ABAP поддерживает передачу параметров по позициям, а не по именам как в VBA. (В документации написано, что это временно :) ). Поэтому для MS Word использовать OLE становиться практический невозможно, где таких параметров не только куча (под 20 кое-где) но и зачастую параметры передаются не по значению, а по ссылке.

про
NeMurometz написал(а):
Закладки в шаблоне
что-то не понял

NickS написал(а):
Code:
Application.VBE.ActiveVBProject.VBComponents("MyModule").CodeModule.AddFromString "Dim intJack As Integer"

Зависит от уровня безопасности макросов и галочки "Доверять доступ к Visual Basic Project". Некоторые антивирусы любое обращение к VBProjec расценивают как вирус.

IMHO для ехсеl лучше всего использовать надстройки xla. А для word использовать обычные макросы вызываемые через DOI.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Удалить часть текста WORD
СообщениеДобавлено: Пт, апр 29 2011, 09:03 
Специалист
Специалист

Зарегистрирован:
Ср, дек 22 2010, 19:49
Сообщения: 114
matik написал:
NeMurometz написал(а):
Через использование OLE.

Конечно можно писать через всякие create object, get property of, и flush итп, но
1) Код надо писать самому наобум вслепую.
2) Надо передавать даже Optional параметры для вызова методов, так как ABAP поддерживает передачу параметров по позициям, а не по именам как в VBA. (В документации написано, что это временно :) ). Поэтому для MS Word использовать OLE становиться практический невозможно, где таких параметров не только куча (под 20 кое-где) но и зачастую параметры передаются не по значению, а по ссылке.

Все верно - самому не нравится (никто и не говорил, что это будет просто :o ), но по условию задачи - требуется не использовать макросы.
matik написал:
про
NeMurometz написал(а):
Закладки в шаблоне
что-то не понял

ЧистА для облегчение труда. Если требуется удаление текста в определенных (заранее известных) местах, то, можно поставить там закладки и переходить по ним GoToBookmarks (что-то подобное)

_________________
Человек готов работать 24 часа в сутки, лишь бы ничего не делать.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Удалить часть текста WORD
СообщениеДобавлено: Пт, апр 29 2011, 11:21 
Младший специалист
Младший специалист

Зарегистрирован:
Вт, авг 05 2008, 19:46
Сообщения: 96
Откуда: С Урала
Интересно на чем основано предубеждение перед макросами? У нас то же было все запрещено до R/3 по соображениям безопасности. А сейчас запускай пожалуйста...
Еще чисто теоретический вариант через скрипт
Code:
CREATE OBJECT MSScriptControl_ScriptControl 'MSScriptControl.ScriptControl'.
SET PROPERTY OF MSScriptControl_ScriptControl 'LANGUAGE' = 'vbscript'.

Я так PageSetup.Zoom=false для EXCEL без макросов ставил. То же из-за религиозных соображений запрет...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Удалить часть текста WORD
СообщениеДобавлено: Пт, апр 29 2011, 13:05 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, авг 19 2004, 17:37
Сообщения: 1962
Откуда: Москва
Пол: Мужской
XXX_:) написал:
Добрый день. Есть необходимость удалить часть текста WORD без использования макросов. Подскажите как это сделать.....

Для начала опишите, как этот документ формируется, каким способом?

_________________
"For all entries" не в SAP-ах, "for all entries" в головах! :)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Удалить часть текста WORD
СообщениеДобавлено: Ср, май 04 2011, 19:29 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Пн, фев 11 2008, 11:54
Сообщения: 359
Откуда: Воронеж
Пол: Мужской
Удалил через OLE. Использовал таблицы, хотя наверное можно было бы и метки. Спасибо всем.

_________________
Hормальные люди делают вещи намного более безумные чем всё, что делают сумасшедшие (c) С.Лем


Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 8 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex [Bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB