4

Я ищу способ сделать следующее в Microsoft Word 2016:

Я ищу способ заставить таблицу (или границу) работать так же долго, как и на странице, независимо от содержимого. Он должен заполнить всю высоту, какую только может, независимо от того, содержит ли он одну строку или 1000 строк.

На приведенном выше снимке экрана таблица (1) должна занимать все пространство под ней независимо от ее содержимого. Таблица внизу страницы (3) - это таблица, которая автоматически перемещается вниз. Если (1) становится слишком большим, чтобы поместиться на странице, он автоматически переместит (3) на следующую страницу. Это уже работает, плавая (3) в нижней части страницы.

Я не нашел способа заставить мой стол (1) занимать всю высоту. Может быть, мне нужно использовать что-то еще, чем стол? В этом случае очень важно, чтобы я мог поставить стол. Потому что таблица, которую вы видите в (1), будет автоматически сгенерирована из пользовательских данных и должна оставаться таблицей. Я могу положить почти все вокруг стола, но он должен оставаться за столом и может быть стилизован в любом случае, если это необходимо. Примечание с одной стороны: я уже пытался создать текстовое поле, но таблица внутри текстового поля не работает для моих целей (потому что этот файл впоследствии редактируется с помощью программирования .NET).

РЕДАКТИРОВАТЬ: важное примечание. На скриншоте показаны две строки, но после обработки может появиться любое количество строк (возможно 2, 3, даже 10.000 строк).

У кого-нибудь есть какие-либо идеи? Вы не поверите, сколько часов я уже потратил на эту проблему ...

2 ответа2

2

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

Основной трюк заключается в использовании границы страницы, как предложил Мате Юхас в комментарии.

Сначала установите сплошную черную рамку шириной 1 пт внизу, слева и справа (не сверху). Нажмите « Параметры», установите все поля на 0 пунктов, установите параметр « Из» в « Текст», а затем снимите все 4 флажка в разделе « Параметры».

Далее вставьте 3 таблицы.

Таблица 1 (это та, что показана в верхней части вашей иллюстрации):

  1. Вставьте таблицу, в которой есть столько столбцов и строк, сколько вам нужно.
  2. В свойствах таблицы задайте для предпочтительной ширины значение 100%, измеренное в процентах. Оставьте текстовую обертку равной None. Установите сплошную черную верхнюю и нижнюю границу в 1 пункт (и внутренние границы, если вы хотите их, хотя в примере на иллюстрации их нет). Границы боковой страницы будут служить боковыми границами.

Таблица 2 (основная таблица, которая будет иметь переменную длину):

  1. Вставьте таблицу, в которой есть столько столбцов и строк, сколько вам нужно. Убедитесь, что между этой таблицей и таблицей 1 есть пустой абзац.
  2. В свойствах таблицы установите ширину на 100%, измеренную в процентах. Оставьте текстовую обертку равной None и добавьте сплошную черную верхнюю границу размером 1 пт (и внутренние границы, если они вам нужны).
  3. При желании можно уменьшить высоту абзаца между таблицами 1 и 2. Затем выберите абзац и примените к нему белую заливку, чтобы замаскировать границы боковой страницы.

Таблица 3 (внизу страницы):

  1. Вставьте таблицу, в которой есть столько столбцов, сколько вам нужно, и на 1 строку больше, чем вам нужно.
  2. В свойствах таблицы задайте для предпочтительной ширины значение 100%, измеренное в процентах. Установите для переноса текста значение « Вокруг», затем нажмите « Позиционирование» и установите для горизонтального положения значение « -1» относительно поля (для перекрытия левой границы страницы), а для вертикального - « снизу» относительно поля. Установите сплошной черный верх 1 pt и внутренние границы.
  3. Выберите верхнюю строку таблицы и объедините ячейки. Затем, когда верхний ряд еще выбран, перейдите в Свойства таблицы > Границы и заливка и примените к этой строке заливку белым цветом, чтобы «замаскировать» границы боковой страницы.

    На этом этапе правая граница страницы не была полностью замаскирована в моем документе, поэтому я вернулся в Свойства таблицы и изменил поле Измерение в разделе Размер на Точки (это единица измерения, которую будет использовать моя версия Word вместо дюймов или см). Затем я немного увеличил ширину, примерно на 2 пункта. Это поле немного сложное, потому что некоторые значения просто не «принимают», поэтому вам может потребоваться увеличить или уменьшить левое или правое поле страницы примерно на 1/2 pt или около того, чтобы все выровнялось.

  4. При желании настройте параметры абзаца для верхней строки, чтобы он соответствовал пустому абзацу между таблицами 1 и 2.

  5. Установите пустой абзац между таблицами 2 и 3 на точную высоту 1 пункт, без пробелов сверху или снизу, чтобы эффективно скрыть его.

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

Готовый стол

0

Это работает в Word 365 и должно работать в Word 2016

  1. Выберите строку, которую вы хотите изменить, в вашем случае, строку, которую вы пометили как "1".
  2. Щелкните правой кнопкой мыши и выберите "Свойства таблицы"
  3. Выберите "Строка"
  4. Укажите минимальную высоту, которая вам нужна (вам нужно будет поиграть с ней, чтобы она соответствовала вашему столу), затем убедитесь, что для поля «Высота строки:» установлено значение "По крайней мере"

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .