Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » VBA - Удаление лишних пробелов Word

Ответить
Настройки темы
VBA - Удаление лишних пробелов Word

Пользователь


Сообщения: 50
Благодарности: 0

Профиль | Отправить PM | Цитировать


Ребят помогите проблему решить.
В общем создаю код который бы форматировал документ (документ всегда стандартный, т.к. выгружается из определенной ИС и там куча ляпов которые нужно редактировать).

Одним из фрагментов редактирования является удаление лишних пробелов (2 и более).
Долго заморачиваться не стал и записал макрос:

Код: Выделить весь код
DeleteSpace Макрос
' Удаление лишних пробелов
'
    Selection.WholeStory
    Selection.Find.ClearFormatting
    Selection.Find.Replacement.ClearFormatting
    With Selection.Find
        .Text = " {2;}"
        .Replacement.Text = " "
        .Forward = True
        .Wrap = wdFindAsk
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchAllWordForms = False
        .MatchSoundsLike = False
        .MatchWildcards = True
    End With
    Selection.Find.Execute Replace:=wdReplaceAll
Другого способа я не знаю.
По результатам выполнения этого кода цель достигается, только всегда выскакивает такое сообщение:

Это конечно не смертельно, но хотелось бы его убрать что ли. Что бы оно либо не появлялось вообще, либо автоматически кнопка "нет" нажималась.

Можно ли решить эту проблему? Помогите пожалуйста.

Отправлено: 18:22, 13-08-2012

 

Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Цитата NoBrain:
Долго заморачиваться не стал »
Стоило попробовать.


Код: Выделить весь код
Option Explicit

Sub RemoveMultiSpaces()
    With Selection.Find
        .ClearFormatting
        .Replacement.ClearFormatting
        
        .Text = " {2;}"
        .Replacement.Text = " "
        .Forward = True
        .Wrap = wdFindContinue
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchAllWordForms = False
        .MatchSoundsLike = False
        .MatchWildcards = True
        
        .Execute Replace:=wdReplaceAll
    End With
End Sub
Это сообщение посчитали полезным следующие участники:

Отправлено: 22:12, 13-08-2012 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » VBA - Удаление лишних пробелов Word

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
VBS/WSH/JS - [решено] Удаление/добавление строки в документе word Seryoga204 Скриптовые языки администрирования Windows 4 02-02-2015 20:13
2007 - [решено] Удаление слова из словаря MS Word 2007 StarMAUGLI Microsoft Office (Word, Excel, Outlook и т.д.) 2 09-05-2012 09:59
VBS/WSH/JS - [решено] Удаление/вставка строк в Word AlexVong Скриптовые языки администрирования Windows 3 03-05-2011 17:20
CMD/BAT - Удаление пробелов справа в строках в файле (rtrim) dimas_xp Скриптовые языки администрирования Windows 2 04-06-2010 09:33
[решено] Удаление пробелов AzazeLHAck AutoIt 3 03-05-2010 01:49




 
Переход