![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 14.10.2009
Сообщений: 14
|
![]()
Нужно сделать массу замен в документе ворд, например:
я реализую через функцию но это же наверно не самый быстрый способ?)) если документ очень большой... это просто невыносимо... Код:
Код:
|
![]() |
![]() |
![]() |
#2 |
Балуюсь кодами
Участник клуба
Регистрация: 09.01.2009
Сообщений: 1,837
|
![]()
А другого способа не существует. Попробуйте заменить Selection на ActiveDocument.Range. Почему сделали функцией, если нигде не возвращаете значение? Сделайте процедурой:
Код:
Лучше день потерять — потом за пять минут долететь!©
|
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 24.03.2010
Сообщений: 349
|
![]()
Можно ещё заняться контектсным анализом без использования функции Find. Что-то наподобие этого:
Код:
Нет нерешаемых задач - есть недостаток времени и данных!
|
![]() |
![]() |
![]() |
#4 |
Балуюсь кодами
Участник клуба
Регистрация: 09.01.2009
Сообщений: 1,837
|
![]()
Да, есть такое дело с перебором через Next. Оно иногда быстрее работает, чем цикл For Each (например, с таблицами), но чтобы быстрее поиска? Да и возможности ограничены словом, символом, предложением и т.д.
Лучше день потерять — потом за пять минут долететь!©
|
![]() |
![]() |
![]() |
#5 | |
Форумчанин
Регистрация: 24.03.2010
Сообщений: 349
|
![]() Цитата:
Find довольно медленная штука, особенно на больших текстах...
Нет нерешаемых задач - есть недостаток времени и данных!
|
|
![]() |
![]() |
![]() |
#6 |
Балуюсь кодами
Участник клуба
Регистрация: 09.01.2009
Сообщений: 1,837
|
![]()
Так там же задача стояла другая. А здесь стоит задача замены выражений. Поиск мне представляется наглядным и простым
Лучше день потерять — потом за пять минут долететь!©
|
![]() |
![]() |
![]() |
#7 |
Особый статус
Участник клуба
Регистрация: 24.11.2008
Сообщений: 1,535
|
![]()
Я, пока не углублялся, тоже так думал
![]()
Формула 1 (календарь чемпионата-2016): 26.11.2016 15:55 — Абу-Даби: http://ru.wikipedia.org/wiki/Гран-при_Абу-Даби — (квалификация)! Эфир: http://lion-tv.com/28-match-tv.html
|
![]() |
![]() |
![]() |
#8 |
Форумчанин
Регистрация: 24.03.2010
Сообщений: 349
|
![]()
Что значит ОЧЕНЬ БОЛЬШОЙ? для пробы прогнал Вашу программу на файле 1,5МБ - работал 2 сек. Куда быстрее? С поправкой на процессор допускаю 10-15 сек, неужели Вам надо обрабатывать десятки файлов?
Нет нерешаемых задач - есть недостаток времени и данных!
|
![]() |
![]() |
![]() |
#9 |
Форумчанин
Регистрация: 17.07.2009
Сообщений: 519
|
![]()
IMHO, оптимален поиск с заменой.
Не оптимальны приведённые в первом посте запросы. (Если это не абстрактный пример) Их явно можно оптимизировать путём объединения. Skif-F, встречаются увы документы и по 1,5ГБ |
![]() |
![]() |
![]() |
#10 |
Балуюсь кодами
Участник клуба
Регистрация: 09.01.2009
Сообщений: 1,837
|
![]()
При том, что текста не может быть более 32Мб!
Лучше день потерять — потом за пять минут долететь!©
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Массовая очистка TextBox | Kveldulv | Microsoft Office Excel | 2 | 26.03.2010 14:31 |
Массовая замена аргументов | kzld | Microsoft Office Excel | 8 | 07.02.2010 17:57 |
Массовая обработка файлов | bionicle | Помощь студентам | 2 | 30.01.2010 12:37 |
Массовая драка в военной части на Алтае | rpy3uH | Свободное общение | 5 | 10.07.2009 14:02 |
Замена кода программы с Delhi5 на Delhi7 либо замена базы данных с Acessa на MySQL | DorianLeroy | Фриланс | 8 | 18.02.2009 18:52 |