Программное форматирование таблиц word

Содержание

  • Использование стилей
  • Добавление рамок
    • Добавление границ
    • Добавление границ для отдельных ячеек
    • Удаление всех или отдельных границ
  • Скрытие и отображение сетки
    • Отображение и скрытие сетки
  • Добавление столбцов, строк ячеек
    • Добавление ячейки
    • Добавление столбца
    • Добавление строки
  • Удаление строк, столбцов, ячеек
  • Объединение и разбиение ячеек
    • Выравнивание и перемещение таблицы
  • Повторение заголовка таблицы на страницах документа
  • Управление разбиением таблицы
    • Печать всей строки на одной странице
    • Создание принудительного разрыва таблицы на страницах
  • Вопросы и ответы

Форматирование таблиц в Word

Зачастую, просто создать шаблонную таблицу в MS Word недостаточно. Так, в большинстве случаев требуется задать для нее определенный стиль, размер, а также ряд других параметров. Говоря проще, созданную таблицу нужно отформатировать, а сделать это в Ворде можно несколькими способами.

Урок: Форматирование текста в Word

Использование встроенных стилей, доступных в текстовом редакторе от Майкрософт, позволяет задавать формат для всей таблицы целиком или ее отдельных элементов. Также, в Ворде присутствует возможность предварительного просмотра форматированной таблицы, благодаря чему всегда можно увидеть, как она будет выглядеть в том или ином стиле.

Урок: Функция предварительного просмотра в Word

Использование стилей

Стандартный вид таблицы мало кого может устроить, поэтому для его изменения в Ворде имеется большой набор стилей. Все они расположены на панели быстрого доступа во вкладке «Конструктор», в группе инструментов «Стили таблиц». Для отображения этой вкладки дважды кликните по таблице левой кнопкой мышки.

стили таблиц в Word

Урок: Как в Word создать таблицу

В окне, представленном в группе инструментов «Стили таблиц», вы можете выбрать подходящий стиль для оформления таблицы. Чтобы увидеть все доступные стили, нажмите кнопку «Больше» больше, расположенную в правом нижнем углу.

выбор стиля в word

В группе инструментов «Параметры стиля таблицы» снимите или установите галочки напротив параметров, которые требуется скрыть или отобразить в выбранном стиле таблицы.

Вы также можете создать собственный стиль таблицы или изменить уже существующий. Для этого выберите соответствующий параметр в меню окна «Больше».

изменить стиль в word

Внесите необходимые изменения в открывшемся окне, настройте необходимые параметры и сохраните собственный стиль.

Создание стиля в Word

Lumpics.ru

Добавление рамок

Вид стандартных границ (рамок) таблицы тоже можно изменить, настроить так, как вы посчитаете нужным.

Добавление границ

1. Перейдите во вкладку «Макет» (основной раздел «Работа с таблицами»)

работа с таблицами в Word

2. В группе инструментов «Таблица» нажмите кнопку «Выделить», выберите в выпадающем меню пункт «Выделить таблицу».

выделить таблицу в word

3. Перейдите во вкладку «Конструктор», которая тоже расположена в разделе «Работа с таблицами».

4. Нажмите кнопку «Границы», расположенную в группе «Обрамление», выполните необходимое действие:

кнопка границы в word

выбор стиля границы в word

Добавление границ для отдельных ячеек

Если это необходимо, вы всегда можете добавить границы для отдельных ячеек. Для этого нужно выполнить следующие манипуляции:

1. Во вкладке «Главная» в группе инструментов «Абзац» нажмите кнопку «Отобразить все знаки».

включить скрытые знаки в Word

2. Выделите необходимые ячейки и перейдите ко вкладке «Конструктор».

выделить ячейки таблицы в Word

3. В группе «Обрамление» в меню кнопки «Границы» выберите подходящий стиль.

выбрать тип границы в word

4. Отключите режим отображение всех знаков, повторно нажав на кнопку в группе «Абзац» (вкладка «Главная»).

отключить скрытые знаки в Word

Удаление всех или отдельных границ

Помимо добавления рамок (границ) для всей таблицы или отдельных ее ячеек, в Ворде также можно выполнить и противоположное — сделать все границы в таблице невидимыми или же скрыть границы отдельных ячеек. О том, как это сделать, вы можете прочесть в нашей инструкции.

Урок: Как в Word скрыть границы таблицы

Скрытие и отображение сетки

Если вы скрыли границы таблицы, она, в определенной степени, станет невидимой. То есть, все данные будут находиться на своих местах, в своих ячейках, но разделяющие их линии отображаться не будут. Во многих случаях в таблице со скрытыми границами все же нужен какой-то «ориентир» для удобства работы. Таковым выступает сетка — этот элемент повторяет линии границ, отображается он только на экране, но не выводится на печать.

Отображение и скрытие сетки

1. Дважды кликните по таблице, чтобы выделить ее и открыть основной раздел «Работа с таблицами».

выделить таблицу в Word

2. Перейдите ко вкладке «Макет», расположенную в этом разделе.

вкладка макет в Word

3. В группе «Таблица» нажмите кнопку «Отобразить сетку».

отобразить сетку в Word

    Совет: Для скрытия сетки повторно нажмите на эту кнопку.

Урок: Как в Ворде отобразить сетку

Добавление столбцов, строк ячеек

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

Добавление ячейки

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

выбор ячейки в Word

2. Перейдите ко вкладке «Макет» («Работа с таблицами») и откройте диалоговое окно «Строки и столбцы» (небольшая стрелка в правом нижнем углу).

открытие окна добавления в Word

3. Выберите подходящий параметр для добавления ячейки.

Добавление ячеек в word

Добавление столбца

1. Кликните по той ячейке столбца, которая расположена слева или справа от места, куда требуется добавить столбец.

вкладка макет в Word

2. Во вкладке «Макет», что находится в разделе «Работа с таблицами», выполните требуемое действие с помощью инструментов группы «Столбцы и строки»:

выбор параметра для добавления в Word

  • Нажмите «Вставить слева» для вставки столбца слева от выделенной ячейки;
  • Нажмите «Вставить справа» для вставки столбца справа от выделенной ячейки.

столбец добавлен в Word

Добавление строки

Для добавления строки в таблицу воспользуйтесь инструкцией, описанной в нашем материале.

Урок: Как в Word вставить строку в таблицу

Удаление строк, столбцов, ячеек

Если это необходимо, вы всегда можете удалить ячейку, строку или столбец в таблице. Для этого необходимо выполнить несколько простых манипуляций:

1. Выделите фрагмент таблицы, который нужно удалить:

  • Для выделения ячейки кликните по ее левому краю;
  • Для выделения строки кликните по ее левой границе;

выделение строки в Word

  • Для выделения столбца кликните по его верхней границе.

выделение столбца в Word

2. Перейдите во вкладку «Макет» (Работа с таблицами).

удалить в word

3. В группе «Строки и столбцы» нажмите на кнопку «Удалить» и выберите подходящую команду для удаления необходимого фрагмента таблицы:

  • Удалить строки;
  • Удалить столбцы;
  • Удалить ячейки.

столбец удален в Word

Объединение и разбиение ячеек

Ячейки созданной таблицы при необходимости всегда можно объединить или, наоборот, разделить. Более детальную инструкцию касательно того, как это сделать, вы найдете в нашей статье.

Урок: Как в Ворд объединить ячейки

Выравнивание и перемещение таблицы

При необходимости, вы всегда можете выровнять размеры всей таблицы, отдельных ее строк, столбцов и ячеек. Также, вы можете выровнять текстовые и числовые данные, содержащиеся внутри таблицы. При необходимости, таблицу можно перемещать по странице или документу, также ее можно переместить в другой файл или программу. О том, как все это сделать, читайте в наших статьях.

Урок по работе с Ворд:
Как выровнять таблицу
Как изменить размеры таблицы и ее элементов
Как переместить таблицу

Повторение заголовка таблицы на страницах документа

Если таблица, с которой вы работаете, длинная, занимает две и более страниц, в местах принудительного разрыва страницы ее приходится разбивать на части. Как вариант, можно сделать на второй и всех последующих страницах пояснительную надпись типа «Продолжение таблицы на стр. 1». О том, как это сделать, вы можете прочесть в нашей статье.

Урок: Как в Word сделать перенос таблицы

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

Урок: Как в Ворд сделать автоматическую шапку таблицы

Повторяющиеся заголовки будут отображаться в режиме разметки а также в распечатанном документе.

Урок: Печать документов в Word

Управление разбиением таблицы

Как уже было сказано выше, слишком длинные таблицы приходится разбивать на части с помощью автоматических разрывов страниц. В случае, если разрыв страницы окажется на длинной строке, часть строки будет автоматически перенесена на следующую страницу документа.

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

Печать всей строки на одной странице

1. Кликните в любом месте таблицы.

выделить таблицу в Word

2. Перейдите во вкладку «Макет» раздела «Работа с таблицами».

вкладка макет в Word

3. Нажмите кнопку «Свойства», расположенную в группе «Таблицы».

свойства таблицы в Word

4. Перейдите в открывшемся окне во вкладку «Строка», снимите там галочку напротив пункта «Разрешить перенос строк на следующую страницу», нажмите «ОК» для закрытия окна.

свойства таблицы отключить перенос в word

Создание принудительного разрыва таблицы на страницах

1. Выделите строку таблицы, которая должна быть напечатана на следующей странице документа.

выделить строку в Word

2. Нажмите клавиши «CTRL+ENTER» — эта команда добавлять разрыв страницы.

создать разрыв таблицы в Word

Урок: Как сделать разрыв страницы в Word

На этом можно и закончить, так как в данной статье мы детально рассказали о том, что представляет собой форматирование таблиц в Ворде и как его выполнить. Продолжайте осваивать безграничные возможности этой программы, а мы сделаем все возможное для того, чтобы этот процесс для вас упростить.

Принято считать, что Word предназначен для работы с текстом, а Excel ориентирован на создание таблиц. Но это не совсем справедливое утверждение.

Функционал Word достаточно обширен. Это позволяет работать через него и с таблицами. Пользователь может создать таблицу, отредактировать её и оформить на своё усмотрение.

Таблица в Word

Всего существует несколько способов создания таблиц, которые доступны в программе Word.

Способы создания таблиц

Создавая тот или иной контент в виде текста, часто его необходимо дополнить наглядными таблицами. Их содержание сейчас не имеет значения. Пока главное разобраться в том, как сделать таблицы в программе Word и что для этого потребуется.

Как уже говорилось ранее, Word достаточно функциональный инструмент. Потому тут предусмотрено сразу 6 вариантов того, как можно создавать таблицы в Word. Их нужно рассмотреть отдельно.

Стандартный метод

Это наиболее простой и классический способ, как вставить таблицу и отобразить её в Word. Нюанс в том, что размеры ограничены. Это может быть от 1 на 1 до 10 на 8 столбцов и строк.

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

В случае с классическим методом, чтобы создать таблицу в текстовом редакторе Word, потребуется следующая пошаговая инструкция:

Всё, теперь вы знаете, как добавить необходимую таблицу, доступную в Word. Но поскольку она ограничена в количестве столбцов и строк, этот вариант подходит не всегда.

Таблица с заданной шириной

Отличительной особенностью этого способа является то, что здесь можно начертить таблицу в редакторе Word, используя любое число столбцов и строк.

Если вы не знаете, как нарисовать нужную таблицу в Word этим методом, тогда взгляните на инструкцию:

Вот и всё. Работа сделана. Но это далеко не последний способ добавления. Стоит рассмотреть альтернативные варианты.

Рисование

Ещё Word позволяет вставить необходимую пользователю таблицу в документ путём её рисования.

В этом случае на помощь приходит специальный встроенный инструмент. Ничего сложного. Многие юзеры используют этот метод, когда требуется создать таблицу определённой конфигурации. Смысл заключается в том, чтобы:

Так карандаш деактивируется, и можно будет продолжить обычное редактирование.

Если какие-то линии окажутся лишними, для их удаления простой воспользуйтесь ластиком.

Вставка из Excel

Пакет Microsoft Office не просто универсальный, но ещё и тесно взаимосвязан друг с другом. Это позволяет использовать возможности одного инструмента в рамках другого приложения.

Наглядным примером выступает возможность вставлять таблицы Excel непосредственно в текстовый редактор Word. Причём будут предоставлены все его базовые возможности в виде добавления функций, листов, форматирование и многое другое.

«Таблица Excel» в MS Word

Причём сделать это предельно просто. Нужно открыть вкладку «Вставка», и кликнуть по кнопке «Таблица». Далее выбрать пункт «Таблица Excel».

Преобразование текста

Удивительно то, что многие юзеры, достаточно давно использующие текстовый редактор Word, не знают о наличии такой функции как преобразование текста в таблицу.

А ведь это достаточно простой в использовании инструмент. Чтобы им воспользоваться, нужно сделать следующее:

СОВЕТ. Перед преобразованием в таблицу напечатанного текста рекомендуется воспользоваться табуляцией (кнопка Tab), чтобы разбить текст.

Предварительная разбивка позволяет программе правильно определить нужное число компонентов таблицы. То есть строк и столбцов. Строками будут выделенные абзацы, а в раздел со столбцами попадёт текст, который пользователь разделил с помощью табуляции.

Текст, преобразованный в таблицу

Экспресс-таблица

Последним, но не менее часто используемым вариантом, является применение инструмента в виде экспресс-таблицы. Это коллекция готовых шаблонов, которая позволяет буквально в несколько кликов добавить нужную и подходящую по своим параметрам таблицу.

Чтобы сделать это, нужно открыть вкладку «Вставка», оттуда перейти в раздел «Таблица», и кликнуть по пункту «Экспресс-таблицы». Откроется соответствующий список шаблонов, из которого пользователь уже сможет выбрать наиболее подходящий вариант.

«Экспресс-таблицы» в MS Word

Очень актуальный инструмент для тех, кто часто работает с таблицами в текстовом редакторе, и использует при этом определённые конфигурации. Можно сохранить копию такой таблицы, и в последующем использовать её для работы с другим текстом. Каждый раз заново создавать конструкцию не придётся.

Чтобы добавить свой вариант в число шаблонов, нужно левой кнопкой выделить таблицу, после чего нажать на кнопку сохранения выделенного фрагмента в коллекцию. Эта команда располагается как раз под списком базовых шаблонов.

Сохранить выделенный фрагмент в коллекцию экспресс-таблиц

Редактирование

Важно понимать, что после добавления таблица вряд ли будет иметь тот вид, который в итоге потребуется пользователю. Часто приходится что-то добавлять, удалять, объединять и разбивать на отдельные ячейки.

Для всего этого нужны навыки редактирования таблиц. Освоить их не сложно. К тому же, функционал приложения Word достаточно обширный, но одновременно с этим понятный.

Как добавить столбцы и строки

Если при заполнении конструкции оказалось, что количества созданных столбцов или строк не хватает, не обязательно всё удалять, и создавать таблицу заново.

Можно просто добавить недостающие фрагменты. Причём способов доступно сразу несколько:

Если нужно добавить сразу несколько компонентов к таблице, тогда перед применением одного из представленных методов выделите требуемое число строк или столбцов, используя для этого левую кнопку мышки.

Как удалить столбцы или строки

Бывает и так, что нужно избавиться от лишних фрагментов ранее уже созданной таблицы. Это также не сложная для выполнения задача.

Чтобы сделать это, необходимо:

  • нажать по ячейке столбца или строки, от которых требуется избавиться;
  • перейти во вкладку «Макет»;
  • нажать на кнопку «Удаление»;
    Удаление строк и столбцов через панель управления
  • выбрать один из вариантов, которые предложит программа.

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

Как объединить ячейки

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

  • выделить нужное число ячеек путём зажатия левой кнопки мышки;
  • нажать по выделенной области правой кнопкой;
  • выбрать пункт «Объединить ячейки»;
    Объединение ячеек в Word
  • либо воспользоваться той же функцией через вкладку «Макет».

Ластик тоже стирает границы между ячейками, и тем самым объединяет их содержимое. Но с ластиком стоит работать аккуратнее, чтобы не нарушить структуру таблицы, сохранить её аккуратный внешний вид.

Как сделать разбивку ячеек

Такая процедура проводится в тех случаях, когда нужно создать дополнительные столбцы или строки на основе уже ранее созданных ячеек.

Сделать это не сложно. Инструкция имеет следующий вид:

Как вариант, можно воспользоваться карандашом. Но тогда придётся дополнительно оформлять таблицу, чтобы придать ей нужный внешний вид. Потому представленный выше метод обычно работает лучше.

Оформление таблиц

Таблица создана и отредактирована. Но её внешний вид может не соответствовать ожиданиям и требованиям пользователя. Требуется добавить какие-то элементы оформления.

В этом помогут инструменты, доступные во вкладке под названием «Конструктор». Тут есть сразу несколько полезных функций, направленных на улучшение внешнего вида таблиц и их персонализацию.

Функция заливки

Такой инструмент как «Заливка» нужен для того, чтобы поменять цвет в разных ячейках. За счёт этого визуально группируется информация в таблице, данные становятся наглядными, можно расставить акценты.

Заливка ячеек в Word

Для добавления или изменения цвета следует выделить нужные ячейки с помощью левой кнопки мышки, после чего нажать на «Заливка». Этот инструмент находится в категории «Конструктор» на панели инструментов.

Далее уже пользователь выбирает нужный цвет. По такому принципу залить можно все компоненты таблицы, либо выделить только самые основные.

Стиль

С помощью стилей можно поменять оформление таблицы. Для этого в программе Word предусмотрены предустановленные шаблоны.

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

Стили таблиц в Word

Чтобы найти эти шаблоны, достаточно перейти во вкладку «Конструктор», а затем выбрать группу «Стили таблиц».

Изменение ширины и высоты ячеек

В ячейках таблиц далеко не всегда содержится одинаковый объём информации. Потому их нужно отредактировать и оформить так, чтобы они смотрелись максимально органично и красиво. При этом выполняли свои прямые функции.

Чтобы поменять ширину или высоту для ячеек, можно воспользоваться вкладкой «Макет».

Тут инструкция будет иметь следующий вид:

  • выделите необходимые ячейки левой кнопкой мышки;
  • откройте вкладку «Макет»;
  • задайте новые значения в соответствующих полях (Ширина и Высота).

Изменение размера ячейки в Word

Ещё менять размеры ячеек можно вручную. Для этого следует подвести курсор к краю ячейки, и потянуть её в необходимую сторону.

Но при ручном редактировании может нарушиться структура всей таблицы. Потому слишком увлекаться этим методом не рекомендуется.

Границы

Ещё пользователь программы Word при работе с таблицами может откорректировать оформление их границ.

Для этого выбирается соответствующий стиль для границ. Находится он во вкладке «Конструктор» в группе инструментов под названием «Обрамление». Затем с помощью инструмента «Перо» прочерчиваются требуемые линии.

Чтобы отменить действие, если что-то не понравилось, нажмите на комбинацию кнопок Ctrl и Z. Когда будет закончено рисование, следует нажать на Esc.

Обрамление таблицы в Word

Используя встроенные возможности текстового редактора Microsoft Word, можно создавать таблицы, редактировать их, оформлять на своё усмотрение.

Весь функционал хорошо продуман. У каждого инструмента есть своё чёткое и понятное место в соответствующих группах и разделах. Потому нужно совсем немного времени, чтобы освоиться и научиться полноценно работать с таблицами.

Будет справедливо сказать, что не всем и не всегда удобно работать с табличным редактором в лице Excel. Да, в плане таблиц он ещё более функциональный, и открывает перед пользователями дополнительные возможности. Но если основной упор делается на текст, и его часть нужно вставить в таблицу, здесь функций и опций Word будет более чем достаточно.

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

Не зря программа Word считается лучшим текстовым редактором. Причём не только для компьютеров и ноутбуков, работающих на базе операционных систем Windows. У конкурирующих ОС есть свои аналоги для Word. Но почему-то многие юзеры, работая даже с другими операционками, всё равно стремятся установить себе пакет Microsoft Office.

Часто ли вы работаете с таблицами в программе Word? Насколько функциональным и удобным считаете это приложение? Какие недостатки вы видите в Word и где им следует доработать свои инструменты?

Делитесь своим мнением, давайте советы новичкам. Расскажите о каких-то лайфхаках, связанных с таблицами и программой Word.

Подписывайтесь, комментируйте, задавайте вопросы и рассказывайте своим друзьям о нашем проекте!

0 / 0 / 0

Регистрация: 10.05.2010

Сообщений: 10

1

10.05.2010, 15:14. Показов 29626. Ответов 17


Студворк — интернет-сервис помощи студентам

Здравствуйте! У меня есть куча документов с таблицами на 3 листа. Нужно, чтобы по нажатию кнопки всё содержимое отформатировалось(уменьшился шрифт, уменьшилась высота строк, удалились разрывы страниц и содержимое колонтитулов и т.д). Т.е. всё должно уместиться на одном листе! Все документы одинаковые. Пример документа, кидаю. Заранее благодарю!!!!



0



Busine2009

Заблокирован

10.05.2010, 16:24

2

faiza,
т.е. колонтитулы вообще не нужны и нумерация страниц тоже не нужна?



0



0 / 0 / 0

Регистрация: 10.05.2010

Сообщений: 10

10.05.2010, 16:47

 [ТС]

3

Не нужны. Главное, чтобы всё влезло на одну страницу.

Добавлено через 5 минут
Пожалуйста, помогите мне!!! Нужно в ближайшие 3 часа!!!! Я в долгу не останусь!!! Можно ещё удалить строки в таблицах с нумерацией колонок и удалить строки, где «руководитель…подпись….», оставить только после 5й таблицы!!!



0



Busine2009

Заблокирован

10.05.2010, 23:45

4

faiza,
левое поле 3 см — это для чего-то нужно (для брошюровки)? Правое 1,5 см — это тоже для чего-то нужно?
И какой Word 2003 или др.?

Добавлено через 2 часа 12 минут
faiza,
вот макрос. Затем надо будет в нескольких местах удалить двойные энтеры и в ячейках таблиц убрать энтеры, чтобы текст занимал меньше строк.

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
Sub m_1()
Dim response As String
Dim oTable As Table
Dim oSec As Section
Dim oFootnote As Footnote
Dim oHeader As HeaderFooter
Dim oFooter As HeaderFooter
'Размер шрифта
    ActiveDocument.Range.Font.Size = 8
'Копия документа
    response = MsgBox("Есть копия данного документа?", vbCritical + vbYesNo, "Предупреждение")
        If response = vbNo Then
            Exit Sub
        End If
'Принять все Изменения
    ActiveDocument.AcceptAllRevisions
    
'Обычный режим
    ActiveWindow.View.Type = wdNormalView
'Шрифт
    ActiveDocument.Range.Font.Name = "Times New Roman"
'Одинарный междустрочный интервал
    ActiveDocument.Range.ParagraphFormat.Space1
'Во всём документе Основной текст (не Уровень 1, Уровень 2 и т.д.)
    ActiveDocument.Range.Paragraphs.OutlineLevel = wdOutlineLevelBodyText
'Удаляем в 2 этапа все разрывы разделов
    If ActiveDocument.Sections.Count > 1 Then
        Selection.Find.ClearFormatting
        With Selection.Find
            .Text = "^b"
            .Format = False
            .MatchCase = False
            .MatchWholeWord = False
            .MatchWildcards = False
            .MatchSoundsLike = False
            .MatchAllWordForms = False
            .Execute
        End With
        Selection.MoveLeft
        Selection.TypeParagraph
        Do While Selection.Sections(1).Index <> ActiveDocument.Sections.Count - 1
            Application.Browser.Next
            Application.Browser.Next
            Selection.MoveLeft
            Selection.TypeParagraph
        Loop
        
        Selection.HomeKey unit:=wdStory
            
        With Selection.Find
            .Text = "^b"
            .Format = False
            .MatchCase = False
            .MatchWholeWord = False
            .MatchWildcards = False
            .MatchSoundsLike = False
            .MatchAllWordForms = False
            While .Execute
                .Parent.Delete
            Wend
        End With
    End If
'Удаляем Разрывы страниц
    With ActiveDocument.Range.Find
        .Text = "^m"
        .Replacement.Text = "^p"
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
        .Execute Replace:=wdReplaceAll
    End With
'Установка Параметров страниц
    For Each oSec In ActiveDocument.Sections
        With oSec.PageSetup
            .PaperSize = wdPaperA4
            .Orientation = wdOrientLandscape
            .Gutter = CentimetersToPoints(0)
            .TopMargin = CentimetersToPoints(0.8)
            .BottomMargin = CentimetersToPoints(0.8)
            .LeftMargin = CentimetersToPoints(0.8)
            .RightMargin = CentimetersToPoints(0.8)
            
            .FirstPageTray = wdPrinterDefaultBin
            .OtherPagesTray = wdPrinterDefaultBin
            .OddAndEvenPagesHeaderFooter = False
            .DifferentFirstPageHeaderFooter = False
            .HeaderDistance = CentimetersToPoints(0.1)
            .FooterDistance = CentimetersToPoints(0.1)
            .VerticalAlignment = wdAlignVerticalTop
        End With
    Next
'Удаляем Гиперссылки во Всём документе
    'в Основном документе
        Do While ActiveDocument.Hyperlinks.Count <> 0
            ActiveDocument.Hyperlinks(1).Delete
        Loop
    'в Сносках
        For Each oFootnote In ActiveDocument.footnotes
            Do While oFootnote.Range.Hyperlinks.Count <> 0
                oFootnote.Range.Hyperlinks(1).Delete
            Loop
        Next
'Удаляем колонтитулы и делаем нумерацию страниц "Продолжить"
    For Each oSec In ActiveDocument.Sections
        For Each oHeader In oSec.Headers
            oHeader.Range.Delete
        Next oHeader
        For Each oFooter In oSec.Footers
            oFooter.Range.Delete
            oFooter.PageNumbers.RestartNumberingAtSection = False
        Next oFooter
    Next oSec
'Не показываем скрытый текст, т.к. не удаётся от него избавиться с помощью макросов
    With ActiveWindow
        With .View
            .ShowTabs = True
            .ShowSpaces = True
            .ShowParagraphs = True
            .ShowHyphens = True
            .ShowHiddenText = False
            .ShowAll = False
        End With
    End With
'Переходим в Режим разметки
    ActiveWindow.View.Type = wdPrintView
'--------------------------------------------------------------------------------------------------------------------------
'Форматирование Таблиц
 
    For Each oTable In ActiveDocument.Tables
        oTable.Rows.WrapAroundText = False
        oTable.Rows.Alignment = wdAlignRowCenter
        oTable.AutoFitBehavior (wdAutoFitWindow)
        oTable.Rows.HeightRule = wdRowHeightAuto 'Убирает галочку "Высота строки"
    Next
ActiveDocument.Tables(2).Rows(3).Delete
ActiveDocument.Tables(3).Delete
ActiveDocument.Tables(3).Rows(3).Delete
ActiveDocument.Tables(4).Rows(3).Delete
ActiveDocument.Tables(5).Delete
ActiveDocument.Tables(5).Rows(3).Delete
End Sub



0



0 / 0 / 0

Регистрация: 10.05.2010

Сообщений: 10

11.05.2010, 03:51

 [ТС]

5

Спасаибо огромное!!!!!! Всё работает как надо!!!! Как я могу отблагодарить???

Добавлено через 47 минут
Можно ещё, чтобы данные в таблицах были шрифта 8 жирного, а всё остальное — 6. И отступ сверху 2 см, т.к. документ подшивается.

Добавлено через 38 минут
И ещё, чтобы номер в названии(самая первая строка) был тоже 8 шрифтом. Спасибо большое!!!!

Добавлено через 2 минуты
Word 2007. А по поводу левого и правого поля не принципиально. Не важно сколько будет отступ, лишь бы всё уместилось на одной странице.



0



Busine2009

Заблокирован

11.05.2010, 05:55

6

faiza,
из-за верхнего поля шрифт пришлось уменьшать до 7 пт:

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
Sub m_1()
Dim response As String
Dim oTable As Table
Dim oSec As Section
Dim oFootnote As Footnote
Dim oHeader As HeaderFooter
Dim oFooter As HeaderFooter
'Размер шрифта
    ActiveDocument.Range.Font.Size = 7
'Копия документа
    response = MsgBox("Есть копия данного документа?", vbCritical + vbYesNo, "Предупреждение")
        If response = vbNo Then
            Exit Sub
        End If
'Принять все Изменения
    ActiveDocument.AcceptAllRevisions
    
'Обычный режим
    ActiveWindow.View.Type = wdNormalView
'Шрифт
    ActiveDocument.Range.Font.Name = "Times New Roman"
'Одинарный междустрочный интервал
    ActiveDocument.Range.ParagraphFormat.Space1
'Во всём документе Основной текст (не Уровень 1, Уровень 2 и т.д.)
    ActiveDocument.Range.Paragraphs.OutlineLevel = wdOutlineLevelBodyText
'Перевод Таблиц из висячего положения в положение, что они в тексте
    For Each oTable In ActiveDocument.Tables
        oTable.Rows.WrapAroundText = False
    Next
'Удаляем в 2 этапа все разрывы разделов
    If ActiveDocument.Sections.Count > 1 Then
        Selection.Find.ClearFormatting
        With Selection.Find
            .Text = "^b"
            .Format = False
            .MatchCase = False
            .MatchWholeWord = False
            .MatchWildcards = False
            .MatchSoundsLike = False
            .MatchAllWordForms = False
            .Execute
        End With
        Selection.MoveLeft
        Selection.TypeParagraph
        Do While Selection.Sections(1).Index <> ActiveDocument.Sections.Count - 1
            Application.Browser.Next
            Application.Browser.Next
            Selection.MoveLeft
            Selection.TypeParagraph
        Loop
        
        Selection.HomeKey unit:=wdStory
            
        With Selection.Find
            .Text = "^b"
            .Format = False
            .MatchCase = False
            .MatchWholeWord = False
            .MatchWildcards = False
            .MatchSoundsLike = False
            .MatchAllWordForms = False
            While .Execute
                .Parent.Delete
            Wend
        End With
    End If
'Удаляем Разрывы страниц
    With ActiveDocument.Range.Find
        .Text = "^m"
        .Replacement.Text = "^p"
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
        .Execute Replace:=wdReplaceAll
    End With
'Установка Параметров страниц
    For Each oSec In ActiveDocument.Sections
        With oSec.PageSetup
            .PaperSize = wdPaperA4
            .Orientation = wdOrientLandscape
            .Gutter = CentimetersToPoints(0)
            .TopMargin = CentimetersToPoints(2)
            .BottomMargin = CentimetersToPoints(0.8)
            .LeftMargin = CentimetersToPoints(0.8)
            .RightMargin = CentimetersToPoints(0.8)
            
            .FirstPageTray = wdPrinterDefaultBin
            .OtherPagesTray = wdPrinterDefaultBin
            .OddAndEvenPagesHeaderFooter = False
            .DifferentFirstPageHeaderFooter = False
            .HeaderDistance = CentimetersToPoints(0.1)
            .FooterDistance = CentimetersToPoints(0.1)
            .VerticalAlignment = wdAlignVerticalTop
        End With
    Next
'Удаляем Гиперссылки во Всём документе
    'в Основном документе
        Do While ActiveDocument.Hyperlinks.Count <> 0
            ActiveDocument.Hyperlinks(1).Delete
        Loop
    'в Сносках
        For Each oFootnote In ActiveDocument.footnotes
            Do While oFootnote.Range.Hyperlinks.Count <> 0
                oFootnote.Range.Hyperlinks(1).Delete
            Loop
        Next
'Удаляем колонтитулы и делаем нумерацию страниц "Продолжить"
    For Each oSec In ActiveDocument.Sections
        For Each oHeader In oSec.Headers
            oHeader.Range.Delete
        Next oHeader
        For Each oFooter In oSec.Footers
            oFooter.Range.Delete
            oFooter.PageNumbers.RestartNumberingAtSection = False
        Next oFooter
    Next oSec
'Не показываем скрытый текст, т.к. не удаётся от него избавиться с помощью макросов
    With ActiveWindow
        With .View
            .ShowTabs = True
            .ShowSpaces = True
            .ShowParagraphs = True
            .ShowHyphens = True
            .ShowHiddenText = False
            .ShowAll = False
        End With
    End With
'Переходим в Режим разметки
    ActiveWindow.View.Type = wdPrintView
'--------------------------------------------------------------------------------------------------------------------------
'Форматирование Таблиц
 
'Форматирование всех таблиц
    For Each oTable In ActiveDocument.Tables
        oTable.Rows.WrapAroundText = False
        oTable.Rows.Alignment = wdAlignRowCenter
        oTable.AutoFitBehavior (wdAutoFitWindow)
        oTable.Rows.HeightRule = wdRowHeightAuto 'Убирает галочку "Высота строки"
    Next
ActiveDocument.Tables(2).Rows(3).Delete
ActiveDocument.Tables(3).Delete
ActiveDocument.Tables(3).Rows(3).Delete
ActiveDocument.Tables(4).Rows(3).Delete
ActiveDocument.Tables(5).Delete
ActiveDocument.Tables(5).Rows(3).Delete
ActiveDocument.Tables(5).AutoFitBehavior (wdAutoFitWindow)
'Анимируем текст во всех Таблицах
    For Each oTable In ActiveDocument.Tables
        oTable.Range.FormattedText.Font.Animation = wdAnimationMarchingRedAnts
        oTable.Range.Font.Bold = True
    Next
'Шрифт вне Таблиц 6 пт
    With ActiveDocument.Range.Find
        .Text = ""
        .Replacement.Text = ""
        .Font.Animation = wdAnimationNone
        .Replacement.Font.Size = 5
        .Format = True
        .MatchCase = False
        .MatchWholeWord = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
        .Execute Replace:=wdReplaceAll
    End With
For Each oTable In ActiveDocument.Tables
    oTable.Range.FormattedText.Font.Animation = wdAnimationNone
Next
End Sub

По поводу отблагодарить. Если макрос действительно помог, то можешь выслать мне денег на мой кошелёк. А можешь просто отписаться, помог макрос или нет. Или скажи «Спасибо».



1



0 / 0 / 0

Регистрация: 10.05.2010

Сообщений: 10

11.05.2010, 08:42

 [ТС]

7

При выполнении выдаёт ошибку:»Отсутствует доступ к отдельным строкам, поскольку таблица имеет ячейки, объединённые по вертикали». Что делать???

Миниатюры

Форматирование таблиц в Word
 

Форматирование таблиц в Word
 



0



0 / 0 / 0

Регистрация: 10.05.2010

Сообщений: 10

11.05.2010, 08:46

 [ТС]

8

Напиши как и куда закинуть «благодарность» ))) Просто мне же за это платят, а я не сама сделала, так что эти деньги должны быть в заслуженном кошельке))))



0



0 / 0 / 0

Регистрация: 10.05.2010

Сообщений: 10

11.05.2010, 09:12

 [ТС]

9

В результате должно получиться как-то как…



0



Busine2009

Заблокирован

12.05.2010, 20:18

10

faiza,
да, я понял ошибку, получается, что файлы отличаются между собой. В этом случае надо придумать что-то другое, но я бухой сейчас, поэтому тяжело сообразить.
Раз я не смог помочь тебе, то мне не нужна благодарность.
Есть вариант — удаление строк в таблицах с нумерацией колонок вручную, т.е. вывести на панель инструментов кнопку по удалению строк таблиц. Для этого надо вставить в таблицу курсор, а затем применить макрос.

Добавлено через 23 часа 32 минуты
faiza,
вот так можно удалить скрытый текст:

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
Sub m_1()
'Удаляем в 2 этапа скрытый текст (просто так не получается удалить)
'Анимируем скрытй текст
With ActiveDocument.Range.Find
    .ClearFormatting
    .Replacement.ClearFormatting
    .Text = ""
    .Replacement.Text = ""
    .Format = True
    .Font.Hidden = True
    .Replacement.Font.Animation = wdAnimationSparkleText
    .MatchCase = False
    .MatchWholeWord = False
    .MatchWildcards = False
    .MatchSoundsLike = False
    .MatchAllWordForms = False
    .Execute Replace:=wdReplaceAll
End With
'Удаляем Анимированный текст (он же - скрытый)
With ActiveDocument.Range.Find
    .ClearFormatting
    .Replacement.ClearFormatting
    .Text = ""
    .Replacement.Text = ""
    .Format = True
    .Font.Animation = wdAnimationSparkleText
    .MatchCase = False
    .MatchWholeWord = False
    .MatchWildcards = False
    .MatchSoundsLike = False
    .MatchAllWordForms = False
    .Execute Replace:=wdReplaceAll
End With
End Sub



0



babkakoshka

1 / 1 / 0

Регистрация: 14.09.2010

Сообщений: 47

14.09.2010, 15:16

11

Цитата
Сообщение от Busine2009
Посмотреть сообщение

faiza,
из-за верхнего поля шрифт пришлось уменьшать до 7 пт:

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
Sub m_1()
Dim response As String
Dim oTable As Table
Dim oSec As Section
Dim oFootnote As Footnote
Dim oHeader As HeaderFooter
Dim oFooter As HeaderFooter
'Размер шрифта
    ActiveDocument.Range.Font.Size = 7
'Копия документа
    response = MsgBox("Есть копия данного документа?", vbCritical + vbYesNo, "Предупреждение")
        If response = vbNo Then
            Exit Sub
        End If
'Принять все Изменения
    ActiveDocument.AcceptAllRevisions
    
'Обычный режим
    ActiveWindow.View.Type = wdNormalView
'Шрифт
    ActiveDocument.Range.Font.Name = "Times New Roman"
'Одинарный междустрочный интервал
    ActiveDocument.Range.ParagraphFormat.Space1
'Во всём документе Основной текст (не Уровень 1, Уровень 2 и т.д.)
    ActiveDocument.Range.Paragraphs.OutlineLevel = wdOutlineLevelBodyText
'Перевод Таблиц из висячего положения в положение, что они в тексте
    For Each oTable In ActiveDocument.Tables
        oTable.Rows.WrapAroundText = False
    Next
'Удаляем в 2 этапа все разрывы разделов
    If ActiveDocument.Sections.Count > 1 Then
        Selection.Find.ClearFormatting
        With Selection.Find
            .Text = "^b"
            .Format = False
            .MatchCase = False
            .MatchWholeWord = False
            .MatchWildcards = False
            .MatchSoundsLike = False
            .MatchAllWordForms = False
            .Execute
        End With
        Selection.MoveLeft
        Selection.TypeParagraph
        Do While Selection.Sections(1).Index <> ActiveDocument.Sections.Count - 1
            Application.Browser.Next
            Application.Browser.Next
            Selection.MoveLeft
            Selection.TypeParagraph
        Loop
        
        Selection.HomeKey unit:=wdStory
            
        With Selection.Find
            .Text = "^b"
            .Format = False
            .MatchCase = False
            .MatchWholeWord = False
            .MatchWildcards = False
            .MatchSoundsLike = False
            .MatchAllWordForms = False
            While .Execute
                .Parent.Delete
            Wend
        End With
    End If
'Удаляем Разрывы страниц
    With ActiveDocument.Range.Find
        .Text = "^m"
        .Replacement.Text = "^p"
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
        .Execute Replace:=wdReplaceAll
    End With
'Установка Параметров страниц
    For Each oSec In ActiveDocument.Sections
        With oSec.PageSetup
            .PaperSize = wdPaperA4
            .Orientation = wdOrientLandscape
            .Gutter = CentimetersToPoints(0)
            .TopMargin = CentimetersToPoints(2)
            .BottomMargin = CentimetersToPoints(0.8)
            .LeftMargin = CentimetersToPoints(0.8)
            .RightMargin = CentimetersToPoints(0.8)
            
            .FirstPageTray = wdPrinterDefaultBin
            .OtherPagesTray = wdPrinterDefaultBin
            .OddAndEvenPagesHeaderFooter = False
            .DifferentFirstPageHeaderFooter = False
            .HeaderDistance = CentimetersToPoints(0.1)
            .FooterDistance = CentimetersToPoints(0.1)
            .VerticalAlignment = wdAlignVerticalTop
        End With
    Next
'Удаляем Гиперссылки во Всём документе
    'в Основном документе
        Do While ActiveDocument.Hyperlinks.Count <> 0
            ActiveDocument.Hyperlinks(1).Delete
        Loop
    'в Сносках
        For Each oFootnote In ActiveDocument.footnotes
            Do While oFootnote.Range.Hyperlinks.Count <> 0
                oFootnote.Range.Hyperlinks(1).Delete
            Loop
        Next
'Удаляем колонтитулы и делаем нумерацию страниц "Продолжить"
    For Each oSec In ActiveDocument.Sections
        For Each oHeader In oSec.Headers
            oHeader.Range.Delete
        Next oHeader
        For Each oFooter In oSec.Footers
            oFooter.Range.Delete
            oFooter.PageNumbers.RestartNumberingAtSection = False
        Next oFooter
    Next oSec
'Не показываем скрытый текст, т.к. не удаётся от него избавиться с помощью макросов
    With ActiveWindow
        With .View
            .ShowTabs = True
            .ShowSpaces = True
            .ShowParagraphs = True
            .ShowHyphens = True
            .ShowHiddenText = False
            .ShowAll = False
        End With
    End With
'Переходим в Режим разметки
    ActiveWindow.View.Type = wdPrintView
'--------------------------------------------------------------------------------------------------------------------------
'Форматирование Таблиц
 
'Форматирование всех таблиц
    For Each oTable In ActiveDocument.Tables
        oTable.Rows.WrapAroundText = False
        oTable.Rows.Alignment = wdAlignRowCenter
        oTable.AutoFitBehavior (wdAutoFitWindow)
        oTable.Rows.HeightRule = wdRowHeightAuto 'Убирает галочку "Высота строки"
    Next
ActiveDocument.Tables(2).Rows(3).Delete
ActiveDocument.Tables(3).Delete
ActiveDocument.Tables(3).Rows(3).Delete
ActiveDocument.Tables(4).Rows(3).Delete
ActiveDocument.Tables(5).Delete
ActiveDocument.Tables(5).Rows(3).Delete
ActiveDocument.Tables(5).AutoFitBehavior (wdAutoFitWindow)
'Анимируем текст во всех Таблицах
    For Each oTable In ActiveDocument.Tables
        oTable.Range.FormattedText.Font.Animation = wdAnimationMarchingRedAnts
        oTable.Range.Font.Bold = True
    Next
'Шрифт вне Таблиц 6 пт
    With ActiveDocument.Range.Find
        .Text = ""
        .Replacement.Text = ""
        .Font.Animation = wdAnimationNone
        .Replacement.Font.Size = 5
        .Format = True
        .MatchCase = False
        .MatchWholeWord = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
        .Execute Replace:=wdReplaceAll
    End With
For Each oTable In ActiveDocument.Tables
    oTable.Range.FormattedText.Font.Animation = wdAnimationNone
Next
End Sub

По поводу отблагодарить. Если макрос действительно помог, то можешь выслать мне денег на мой кошелёк. А можешь просто отписаться, помог макрос или нет. Или скажи «Спасибо».

Добрый день. Буквально недавно столкнулась с подобной проблемой — срочно огромное количество таблиц (сделанных не очень-то качественно) необходимо было уменьшить, чтобы уместились на одной странице две таблицы на двух языках…Не думала, что можно как-то автоматически решить эту проблему…Оказывается — есть таланты!!!Спасибо Вам! С макросом еще не совсем разобралась, может, неправильно поставила в WORD. А сложно ли написать код (документ высылаю), чтобы нажатием кнопки табличка уменьшилась вдвое?

Вложения

Тип файла: zip СМЕТА 9.zip (9.0 Кб, 129 просмотров)



0



Busine2009

Заблокирован

14.09.2010, 20:35

12

babkakoshka,
т.е. смысл в чём? Есть таблица на одной странице. Надо сделать так, чтобы эта же самая таблица (таблица на первой странице во вложенном файле) была 2 раза на одной странице (вторая страница во вложенном файле)?
Если так, то мне нужны следующие данные:

  1. Поля в документе (Файл — Параметры страницы — Поля).
  2. Расстояние до колонтитулов (Файл — Параметры страницы — Источник бумаги.
  3. Название шрифта и допустимый его размер.

Ну и всё пока вроде.



1



1 / 1 / 0

Регистрация: 14.09.2010

Сообщений: 47

15.09.2010, 10:10

13

Поля могут быть уменьшены максимально, т.е. 1 или 0,5 — левое и правое,как уж получится, нижнее и верхнее поле — могут быть по 1 или 1, 5; размер бумаги — А4, колонтитулов вообще не надо. Шрифт — 7-8, Times New Roman, можна немножко уплотнить, если содержимое строки этого требует.



0



Busine2009

Заблокирован

15.09.2010, 20:12

14

babkakoshka,
Опишите, какие вы делаете действия от А до Я.
Также опишите документы, с которыми работаете: что в них содержится.

Вот код для обработки одной таблицы:

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Sub m_1() 'обработка одной таблицы
If Selection.Information(wdWithInTable) = False Then
    MsgBox "Вставьте курсор в таблицу"
End If
With Selection.Tables(1) 'уменьшение левого и право полей в ячейках - чтобы для текста было больше места
    .LeftPadding = CentimetersToPoints(0.05)
    .RightPadding = CentimetersToPoints(0.05)
End With
With Selection.Tables(1) 'ширина таблицы 9 см
    .PreferredWidthType = wdPreferredWidthPoints
    .PreferredWidth = CentimetersToPoints(9)
End With
Selection.Tables(1).Range.Font.Size = 8 'размер шрифта 8 пт
End Sub

Вот код для обработки всех таблиц в одном документе:

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
Sub m_2() 'обработка всех таблиц в одном документе
Dim oTable As Table
Dim response As String
response = MsgBox("Обработать все таблицы?", vbCritical + vbYesNo) 'Чтобы случайно не запустить макрос
    If response = vbNo Then Exit Sub
For Each oTable In ActiveDocument.Tables
    oTable.LeftPadding = CentimetersToPoints(0.05)
    oTable.RightPadding = CentimetersToPoints(0.05)
    oTable.PreferredWidthType = wdPreferredWidthPoints
    oTable.PreferredWidth = CentimetersToPoints(9)
    oTable.Range.Font.Size = 8
Next
End Sub

Если макрос по обработке всё же запустился, а это не надо, то прервать действие макроса можно остановить Ctrl + Pause (Break).

Напишите, если каких-то команд по обработке таблиц не хватает.



1



babkakoshka

1 / 1 / 0

Регистрация: 14.09.2010

Сообщений: 47

16.09.2010, 12:48

15

Цитата
Сообщение от Busine2009
Посмотреть сообщение

babkakoshka,
Опишите, какие вы делаете действия от А до Я.
Также опишите документы, с которыми работаете: что в них содержится.

Вот код для обработки одной таблицы:

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Sub m_1() 'обработка одной таблицы
If Selection.Information(wdWithInTable) = False Then
    MsgBox "Вставьте курсор в таблицу"
End If
With Selection.Tables(1) 'уменьшение левого и право полей в ячейках - чтобы для текста было больше места
    .LeftPadding = CentimetersToPoints(0.05)
    .RightPadding = CentimetersToPoints(0.05)
End With
With Selection.Tables(1) 'ширина таблицы 9 см
    .PreferredWidthType = wdPreferredWidthPoints
    .PreferredWidth = CentimetersToPoints(9)
End With
Selection.Tables(1).Range.Font.Size = 8 'размер шрифта 8 пт
End Sub

Вот код для обработки всех таблиц в одном документе:

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
Sub m_2() 'обработка всех таблиц в одном документе
Dim oTable As Table
Dim response As String
response = MsgBox("Обработать все таблицы?", vbCritical + vbYesNo) 'Чтобы случайно не запустить макрос
    If response = vbNo Then Exit Sub
For Each oTable In ActiveDocument.Tables
    oTable.LeftPadding = CentimetersToPoints(0.05)
    oTable.RightPadding = CentimetersToPoints(0.05)
    oTable.PreferredWidthType = wdPreferredWidthPoints
    oTable.PreferredWidth = CentimetersToPoints(9)
    oTable.Range.Font.Size = 8
Next
End Sub

Если макрос по обработке всё же запустился, а это не надо, то прервать действие макроса можно остановить Ctrl + Pause (Break).

Напишите, если каких-то команд по обработке таблиц не хватает.

Спасибо! Пока я — в диком восторге!!! А обрабатывать приходится всякие таблицы: подсчет запасов полезных ископ., каталог координат и т.п., так что сразу и не опишешь…Пока что сразу не скажу, какие еще команды нужны. Спасибо огромное!



0



Busine2009

Заблокирован

17.09.2010, 08:15

16

babkakoshka,
в этом коде была ошибка. Вот так должно быть:

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Sub m_1() 'обработка одной таблицы
If Selection.Information(wdWithInTable) = False Then
    MsgBox "Вставьте курсор в таблицу"
    Exit Sub
End If
With Selection.Tables(1) 'уменьшение левого и право полей в ячейках - чтобы для текста было больше места
    .LeftPadding = CentimetersToPoints(0.05)
    .RightPadding = CentimetersToPoints(0.05)
End With
With Selection.Tables(1) 'ширина таблицы 9 см
    .PreferredWidthType = wdPreferredWidthPoints
    .PreferredWidth = CentimetersToPoints(9)
End With
Selection.Tables(1).Range.Font.Size = 8 'размер шрифта 8 пт
End Sub



2



1 / 1 / 0

Регистрация: 14.09.2010

Сообщений: 47

17.09.2010, 11:28

17

Насчет ошибки я еще не совсемь поняла… Но исправила код и теперь — все, как надо. И вообще, это — высший пилотаж! Я даже не подозревала, что такое существует, т.к. в основном работаю в Autocad. Спасибо Вам большое!



1



Busine2009

Заблокирован

17.09.2010, 22:16

18

babkakoshka,
там ошибка была, не влияющая на обработку таблиц. Так что ничего не было. Я обычно тестирую макросы перед вставкой их в форумы, а в этот раз забыл проверить.



1



Добрый день.
Столкнулся с проблемой в ворде. Надо сделать такую таблицу. Как в ворде.
РАЗДЕЛ II.docx

Ориентацию альбомную сделал, dll подключил , не могу понять, как пододвинуть/расширить ячейку…

 Word.Application wordApplication = new Word.Application(); //объявили переменную типа Word
            
            Object template = Type.Missing;
            Object newTemplate = Type.Missing;
            Object documentType = Type.Missing;
            Object visible = Type.Missing;

            wordApplication.Documents.Add(ref template, ref newTemplate, ref documentType, ref visible);//добавили в проложение документ
            Word.Document doc = wordApplication.ActiveDocument;
            wordApplication.Selection.PageSetup.Orientation = Word.WdOrientation.wdOrientLandscape;//ориентация альбомная
            wordApplication.Visible = true; //делаем что бы word не работал в фоновом режиме
            Object r = Type.Missing;
            Word.Paragraph par = doc.Content.Paragraphs.Add(ref r);//дабавляем в документ параграф
            Object missing = Type.Missing;
            Word.Range rng = doc.Range(ref missing, ref missing); //получаем текстовую область параграфа
            rng.Tables.Add(doc.Paragraphs[doc.Paragraphs.Count].Range, 4, 10, ref missing, ref missing);//вставляем в текстовую область таблицу
            Word.Table tbl = doc.Tables[doc.Tables.Count];//для удобства работы присваиваем таблицу переменной
            rng.ParagraphFormat.Alignment = Word.WdParagraphAlignment.wdAlignParagraphCenter; //выравниваем весь текст по центру
                  // Форматируем таблицу и применяем стиль
 
            Word.Border[] borders = new Word.Border[6];//массив бордеров
            borders[0] = tbl.Borders[Word.WdBorderType.wdBorderLeft];//левая граница 
            borders[1] = tbl.Borders[Word.WdBorderType.wdBorderRight];//правая граница 
            borders[2] = tbl.Borders[Word.WdBorderType.wdBorderTop];//нижняя граница 
            borders[3] = tbl.Borders[Word.WdBorderType.wdBorderBottom];//верхняя граница
            borders[4] = tbl.Borders[Word.WdBorderType.wdBorderHorizontal];//горизонтальная граница
            borders[5] = tbl.Borders[Word.WdBorderType.wdBorderVertical];//вертикальная граница
            foreach (Word.Border border in borders)
            {
                border.LineStyle = Word.WdLineStyle.wdLineStyleSingle;//ставим стиль границы 
                border.Color = Word.WdColor.wdColorBlack;//задаем цвет границы
            }

            tbl.Cell(1, 1).Range.Text = "Наименование мясной продукции                   (код по ОКРБ 007-2007)                                                                                          ";
           /* tbl.Cell(1, 1).Range.Font.Size = 8;
            tbl.Cell(1, 1).Range.Font.Name = "Times New Roman";
            tbl.Cell(1, 1).Height = 10; // растяжение вниз ячейки
 */
            tbl.Cell(1, 2).Range.Text = "Код строки";
            tbl.Cell(1, 3).Merge(tbl.Cell(1, 4));
            tbl.Cell(1, 3).Range.Text = "Произведено продукции";
            tbl.Cell(1, 4).Merge(tbl.Cell(1, 5));
            tbl.Cell(1, 4).Merge(tbl.Cell(1, 6));
            tbl.Cell(1, 4).Merge(tbl.Cell(1, 5));
          
            tbl.Cell(1, 4).Range.Text = "Реализовано продукции в отчетном периоде";
            tbl.Cell(1, 5).Range.Text = "Запасы готовой продукции на складе организа-ции на конец отчетного периода";

ребята, подскажите, как что правильнее, завтра надо будет такую функцию реализовать работащую.
Или может создать шаблон — заменять там значения?!

Бытует мнение, что таблицы Microsoft Word — самая неприятная часть текстового редактора. Они неуклюжи, ими трудно управлять, их тяжело форматировать. После прочтения этой статьи у вас не останется таких предубеждений.

7 трюков с таблицами в Word, о которых вы могли не знать

Предвзятое отношение к таблицам имеет свои глубокие корни. Чего греха таить, дюжину лет назад таблицы в Word не могли похвастаться удобством из-за несовершенства программы в целом. Но с тех пор прошло много времени. Microsoft прекрасно поработала над своими ошибками и сделала всё возможное для удобства пользователей. Жаль, конечно, что многие из тех самых пользователей об этом не знают и до сих пор работают в 2003-й редакции офисного пакета. Историю про ёжиков и кактусы не напоминает? :)

Всем застрявшим в прошлом просто по-человечески рекомендую обновиться как минимум до 2013-й версии Microsoft Office, а лучше — сразу до свежей, 2016-й. Поверьте, вам только кажется, что вы работаете в ставшей классикой среде, на самом деле она уже давно поросла мхом и плесенью.

Используйте шаблоны

Офисные будни полны однообразных документов, в том числе и таблиц. Берём одну электронную бумажку, вырезаем её часть, вставляем в новый документ и правим детали. Хорошая методика, но, как мне кажется, работа с шаблонами немного проще и быстрее. К слову, в самом Word шаблоны величают экспресс-таблицами.

Кликните по закладке «Вставка», щёлкните по «Таблице» и перейдите к «Экспресс-таблицам». Обратите внимание на пункт «Сохранить выделенный фрагмент в коллекцию».

Здесь вы найдёте несколько вполне полезных вариантов и, что самое главное, сможете сохранить в качестве шаблона любую другую таблицу или её фрагмент, в том числе и собственного производства.

Рисуйте таблицы

Помните медведя, который в детстве прошёлся по вашим ушам и рукам в безудержном цыганском танце? Именно с тех пор вы не любите пение и кисточки и именно с тех пор вы упорно игнорируете опцию «Нарисовать таблицу» в Word. Встряхнись, взрослый человек! Пора подавить мохнатое чудовище! Это проще, чем кажется.

Кликните по закладке «Вставка», щёлкните по «Таблице» и перейдите к пункту «Нарисовать таблицу».

И не бойтесь совершить промах: под рукой всегда найдётся ластик. Порой карандаш и стиралка существенно упрощают создание сложных таблиц с мелкими элементами.

Вставляйте строки и столбцы быстро

Начиная с Word 2013 добавление строк и столбцов из зубодробительной пытки превратилось в увлекательную забаву. Не подумайте, архаичные «Вставить столбцы слева/справа» и «Вставить строки сверху/снизу» никуда не делись, но о них теперь можно забыть.

Наведите курсор на пространство между строками или столбцами за пределами таблицы и нажмите на появившийся плюс.

В будущем хотелось бы видеть что-то похожее и для функции удаления.

Применяйте линейку

У каждого человека есть любимые и отталкивающие цифры, которые он без разбору использует или избегает в своей жизни. Даже в параметрах своих таблиц. Знаю таких. :)

Если вы привыкли точно выставлять значения отступов, ширину и высоту ячеек через свойства таблицы, попробуйте альтернативу — линейку.

Наведите курсор на границу столбцов или строк, схватите её, зажмите клавишу Alt и пользуйтесь удобством сантиметровой линейки.

Такой же трюк можно провернуть и с маркерами отступов и выступов. Наведите на них курсор и зажмите всё ту же клавишу Alt.

Используйте горячие клавиши

Будь я разработчиком программного обеспечения, я бы нарёк горячие клавиши душевными кнопками. Ведь порой так и хочется обняться с ноутбуком только потому, что они есть. Что же касается таблиц Word, я наиболее часто использую тройку комбинаций:

  1. Alt + Shift + «Вверх/Вниз» быстро перемещает текущую строку на одну позицию выше или ниже (просто незаменимая вещь).
  2. Ctrl + Shift + A мгновенно превращает прописные буквы в заглавные, что очень полезно для заголовков.
  3. Ctrl + Tab добавляет табуляцию в ячейке, в то время как обычный Tab переносит курсор на следующую ячейку.

Преобразуйте текст в таблицу

Немного магии, которой можно прихвастнуть на глазах у изумлённой публики. Вместо того чтобы создавать таблицы привычным способом, попробуйте парочку других, более изощрённых, вариантов:

  • Массивы ячеек, скопированные из Excel, вставляютcя в Word как таблица с невидимыми границами.
  • Хорошо структурированный текст легко преобразуется в таблицу штатными средствами Word.

Выделите текст, кликните по закладке «Вставка», щёлкните по «Таблице» и выберите пункт «Преобразовать в таблицу».

Обратите внимание на вспомогательные параметры: качество преобразования зависит от них напрямую.

Контролируйте размеры ячеек

Хочешь узнать человека, подкинь ему таблицу с текстом-самодуром. Немного свободная интерпретация известного мнения, конечно, но бьёт в точку. Только взгляните на скриншот, а точнее на первую колонку и слово «филологический» — безобразное бельмо.

По моим наблюдениям, в таких случаях люди сначала неприлично выражаются, а затем прибегают к не самому оптимальному выходу — уменьшают размер шрифта. Но лучше вместить текст другим путём.

Щёлкните в ячейке правой клавишей, выберите пункт «Свойства таблицы», переключитесь на закладку «Ячейка», перейдите к «Параметрам» и проставьте галочку в графе «Вписать текст».

Word поднатужится и вернёт убежавшую букву на место, а в мире снова воцарится мир. К слову, для наглядности «вписанный» текст будет подчёркиваться голубой линией.

А ещё, бывает, позаимствуешь чью-то таблицу и довольно напеваешь себе под нос: «Только ты, рыба моей мечты»! Хорошая работа чужими руками! Начинаешь заливать её своими данными, и тут происходит неконтролируемая чертовщина: одни столбцы расползаются за счёт похудения других. Голова отрезвляется, и реальность перестаёт радовать. Как быть?

Шутки шутками, но случается, что вам присылают таблицу строгого формата, с которой нельзя оплошать. Как минимум не поленитесь отправить её обратно с прежними размерами. Так получатель увидит то, что ожидает увидеть. А для этого отключите автоподбор размеров по содержимому.

Щёлкните в любой из ячеек правой клавишей мыши, выберите пункт «Свойства таблицы», перейдите к «Параметрам» и снимите галочку в графе «Автоподбор размеров по содержимому».

Эта же опция спасёт вашу таблицу от коллапса, если вам необходимо заполнить некоторые ячейки изображениями: они впишутся в виде миниатюры вместо полномасштабного размера.

Есть что добавить? Пишите в комментариях.

Понравилась статья? Поделить с друзьями:
  • Программное форматирование документа в word
  • Программное средство word относится к
  • Программное средство excel относится к субд
  • Программное создание таблиц в excel
  • Программное решение задач в excel