table

Розглянемо невеликий макрос, який може в автоматичному режимі вирівняти всі таблиці, що містяться у документі, по ширині сторінки (відносно полів).

Багато хто зустрічається із проблемами форматування тексту у документах, який додавали із різних джерел без «правильного» вставляння. Із таблицями обставини ще більш складніші. Бажано при вставлянні тексту вибирати «Зберегти лише текст». Такий текст набагато легше та швидше можна відформатувати ніж тест із вихідним форматуванням з декількох джерел. Часто проблеми із таблицями та форматуванням тексту документів я спостерігаю після розпізнавання документів програмою FineReader та перенесенням його у текстовий редактор Word. Це був невеличкий відступ, на замітку.

Якщо ви вирішили вирівняти всі таблиці документа по ширині вікна з урахуванням полів, то скопіюйте наступний код макроса (джерело: wordexpert.ru):

Sub tableAutoFit()
' Выравнивает все таблицы в документе по ширине окна
Dim myTable As table
For Each myTable In ActiveDocument.Tables
   myTable.AutoFitBehavior wdAutoFitWindow
Next myTable
End Sub

Алгоритм використання макроса:

1. Відкриваємо вкладку «Вид», тоді «Макросы → Макросы».

table

table

2. У поле для імені вводимо будь-яке ім’я без пробілів для нашого макроса та натискаємо «Создать».

table

3. Відкриється вікно візуального редактора Microsoft Visual Basic. Код з іменем вашого новоствореного макроса (у мене макрос має назву tableAutoFit, знизу добре видно на скриншотах) потрібно видалити та замінити на скопійований вище. 

table

table

4. Відкриваємо або створюємо документ із таблицями, які потрібно вирівняти по ширині та ідемо у «Вид → «Макросы → Макросы». Далі знаходимо наш макрос (tableAutoFit), вибираємо його із списку (якщо макросів більше одного) та натискаємо «Выполнить». Після виконання ви побачите результат.

table

Результат роботи макроса у скриншотах:

table
 


 

table

Порада. Перед виконанням макросу (не лише розглянутого в даній статі але і всіх інших) виконуйте резервне копіювання документа аби попередити втрату даних.

Якщо потрібно мати швидкий доступ до макроса, читайте наступну статтю.