Видалення зайвих прогалин у Word

Якщо ви в силу специфіки своєї роботи часто отримуєте документи Word, Підготовлені кимось іншим, то напевно зустрічали в текстах крім орфографічних помилок, проблеми іншого роду – зайві пропуски між словами або перед розділовими знаками. Видаляти їх вручну утомливо і вимагає багато часу. Але можна значно полегшити собі життя, якщо створити два макроси, які самостійно і в мить ока позбавлять документ від цієї напасті. Макроси не оригінальні та створені за мотивами рад авторів книги "Microsoft Word: комфортна робота за допомогою макросів".


Для початку відкрийте який-небудь документ, який ви припускаєте перевірити, або ж самі створіть такий документ, навмисно додавши в текст зайві пропуски між словами і перед розділовими знаками. Першим ми створимо макрос, який буде видаляти зайві пробіли між словами.


1. Зайдіть в меню "Сервіс" (Tools), виберіть команду "Макрос" (Macro) і з відкритого списку виберіть команду "Розпочати запис" (Record New Macro). З'явиться діалогове вікно, в якому слід призначити макросу ім'я (нехай буде DeleteSpace) і клацнути на кнопці з зображенням молотка для призначення макросу кнопки. Якщо ви не хочете виводити кнопку макросу на панель інструментів, а бажаєте користуватися поєднаннями клавіш, то можете клікнути на кнопці з зображенням клавіатури:




2. Відкриється діалогове вікно, в якому вам слід перейти на середню вкладку "Команди" і з правого поля перетягнути на панель інструментів ваш новий макрос з назвою Normal.NewMacros.DeleteSpace. До речі, пізніше або прямо зараз ви можете змінити стиль кнопки, відредагувавши її текст або призначивши для кнопки яке-небудь підходяще зображення.


3. Закрийте вікно. Після цього на робочому вікні документа з'явиться панелька з кнопками для запису макросу (див. скріншот).




4. Тепер будьте обережні, так як макрос вже пишеться. Натисніть клавіші "CTRL + H". Відкриється діалогове вікно "Знайти і Замінити". Для доступу до параметрів пошуку натисніть кнопку "Більше", якщо діалогове вікно представлене в короткій формі.


5. Видаліть все, що знаходиться в полі "Знайти" і в полі "Замінити". Натисніть кнопку "Зняти форматування", якщо ця кнопка активна. Зніміть всі галочки з режимів у групі "Параметри пошуку", але залиште або поставте галочку "Символи узагальнення". Виберіть у відчиненому списку напрям "Скрізь".


6. Виділіть весь текст документа, натиснувши комбінацію клавіш "CTRL + A".


7. Введіть у поле "Знайти" пробіл, а потім введіть такий вираз:


{2;}

Тут у фігурних дужках введена цифра 2, а відразу за нею крапка з комою. Цей вираз означає, що призводить до пошуку двох і більше розташованих підряд входжень того знака, який стоїть перед відкривається фігурною дужкою. У нашому випадку буде проведено пошук двох і більше прогалин.


8. Перейдіть до поля "Замінити на" і введіть один пробіл.


9. Натисніть кнопку "Замінити все". Таким чином, якщо буде знайдено кілька поспіль стоять прогалин, то всі вони заміняться на один пробіл.


10. Після закінчення пошуку і заміни закрийте діалогове вікно "Знайти і замінити". Зніміть виділення тексту, натиснувши на клавіатурі клавішу стрілки.


11. Натисніть на кнопку з квадратиком в панелі, що управляє, щоб зупинити запис.


Для тих читачів, які знають, як працювати з вбудованим в Microsoft Word редактором Visual Basic, я просто наведу готовий код макросу:


Sub 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
Selection.MoveRight Unit:=wdCharacter, Count:=1

Другий створений нами макрос буде знаходити і видаляти всі зайві пробіли перед розділовими знаками. Повторіть кроки з 1 по 6 включно. Назвіть макрос як DeleteSpacePunctuationMark. Подальші кроки:


1. Введіть у поле "Знайти" спочатку пробіл, а потім введіть такий вираз:


{1;}([.,:;!?])

Це вираз буквально означає, що призводить до пошуку одного і більше розташованих підряд прогалин, що стоять перед будь-яким переліченим у квадратних дужках розділовим знаком.


2. Перейдіть до поля "Замінити на" і введіть 1 (тут одиниця означає порядковий номер вираження, укладеного в круглі дужки).


3. Натисніть кнопку "Замінити все".


4. Після закінчення пошуку і заміни закрийте діалогове вікно "Знайти і замінити". Зніміть виділення тексту, натиснувши на клавіатурі на клавішу стрілки.


5. Натисніть на кнопку з квадратиком в панелі, що управляє, щоб зупинити запис.


Одержаний код для вставки в редактор VisualBasic:


Sub DelSpacePunktMark()
Selection.WholeStory
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = ” {1;}([.,:;!?])”
.Replacement.Text = “1”
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchAllWordForms = False
.MatchSoundsLike = False
.MatchWildcards = True
End With
Selection.Find.Execute Replace:=wdReplaceAll
Selection.MoveLeft Unit:=wdCharacter, Count:=1
End Sub

Так ви позбудетеся від рутини ручних дій, які, на жаль, неминучі при редагуванні будь-яких документів Word, особливо при пошуку зайвих прогалин у тексті.

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*