Подсчёт таблиц в Word: быстрые и точные методы

Иван Корнев·09.05.2026·3 мин

Узнать количество таблиц в документе Word можно тремя способами: через панель навигации (Ctrl+F), с помощью расширенного поиска объектов или макроса VBA. Самый быстрый — навигатор, самый точный для сложных документов — макрос. Ниже — пошаговые инструкции для каждого метода.

Коротко: для разового подсчёта используйте навигатор (Ctrl+F → вкладка «Объекты»). Для регулярной работы с большими файлами настройте макрос — это сэкономит время и исключит ошибки.

:::toc Оглавление

Быстрый способ: навигатор объектов

Этот метод подходит для большинства документов и не требует специальных навыков.

  1. Откройте документ в Word.
  2. Нажмите Ctrl+F — откроется панель навигации.
  3. Переключитесь на вкладку «Объекты» (иконка с квадратом или список элементов).
  4. В списке отобразятся все таблицы документа с нумерацией.

Количество элементов в списке = количество таблиц. Метод работает в Word 2016, 2019, 2021 и Microsoft 365.

Если вкладка «Объекты» не отображается, нажмите на значок фильтров в панели навигации и включите отображение таблиц и графических объектов.

Поиск по специальным кодам

Альтернативный способ — использовать код специального символа для таблиц.

  1. Нажмите Ctrl+H, чтобы открыть окно «Найти и заменить».
  2. В поле «Найти» введите: ^g (код для графических объектов) или ^t для таблиц в некоторых версиях.
  3. Нажмите «Найти в»«Основной документ».
  4. Word выделит все найденные объекты — количество совпадений отобразится в строке состояния.

Коды поиска могут различаться в зависимости от языка интерфейса и версии Word. Если ^g не работает, попробуйте поиск по слову «Таблица» с включённым фильтром «Только целые слова».

Макрос VBA для точного подсчёта

Для сложных документов с вложенными таблицами, текстовыми полями и объектами используйте макрос. Он учитывает все типы таблиц и выдаёт точное число.

  1. Нажмите Alt+F11, чтобы открыть редактор VBA.
  2. В меню выберите InsertModule.
  3. Вставьте код:
Sub CountAllTables()
    Dim total As Long
    Dim tbl As Table
    Dim shp As InlineShape
    
    ' Подсчёт обычных таблиц
    total = ActiveDocument.Tables.Count
    
    ' Добавление таблиц внутри InlineShapes (редкие случаи)
    For Each shp In ActiveDocument.InlineShapes
        If shp.Type = wdInlineShapeTable Then total = total + 1
    Next shp
    
    MsgBox "Всего таблиц: " & total, vbInformation, "Результат"
End Sub
  1. Нажмите F5 для запуска. Результат отобразится в окне сообщения.

Макрос учитывает как основные таблицы, так и вложенные объекты. Перед запуском сохраните документ — некоторые настройки безопасности могут блокировать выполнение макросов.

Автоматизация для пакетной обработки

Если нужно посчитать таблицы в нескольких файлах:

  • Расширьте макрос циклом по папке: используйте Dir() для перебора файлов .docx и записи результатов в текстовый файл или Excel.
  • Сохраните макрос в шаблоне Normal.dotm, чтобы он был доступен во всех документах.
  • Для корпоративного использования настройте подпись макросов и добавьте его в доверенные источники.

Пример логики пакетного макроса:

  1. Указать путь к папке.
  2. Пройти по всем файлам Word.
  3. Открыть каждый, запустить подсчёт, записать имя файла и количество таблиц.
  4. Закрыть документ без сохранения изменений.

Частые ошибки

  • Пропуск вложенных таблиц: таблицы внутри текстовых полей, колонтитулов или объектов не всегда видны в навигаторе — используйте макрос для полного учёта.
  • Неверный код поиска: символы ^g, ^t работают не во всех версиях — проверяйте справку вашей версии Word.
  • Блокировка макросов: в корпоративных средах выполнение VBA может быть запрещено — согласуйте использование с администратором.
  • Подсчёт в режиме черновика: некоторые объекты не отображаются в черновом режиме — переключитесь на «Разметка страницы» для точного обзора.

FAQ

Можно ли посчитать таблицы без макросов?
Да, через навигатор (Ctrl+F → Объекты) или поиск. Это подходит для простых документов. Для сложных — лучше макрос.

Учитывает ли макрос таблицы в колонтитулах?
Стандартный код считает только таблицы в основном тексте. Для учёта колонтитулов нужно добавить перебор Sections, Headers, Footers.

Работает ли это в Word для Mac?
Интерфейс навигатора аналогичен. Макросы VBA поддерживаются, но сочетание клавиш для открытия редактора — Option+F11.

Как экспортировать результат подсчёта?
Доработайте макрос: вместо MsgBox используйте Open ... For Output для записи в текстовый файл или библиотеку Excel для создания отчёта.

Сколько времени занимает подсчёт в документе на 100+ страниц?
Навигатор — 10–20 секунд. Макрос — 1–3 секунды даже для больших файлов. Пакетная обработка 50 документов займёт 1–2 минуты.