Faça uma tabela automática do MS Word em altura

4

Estou procurando uma maneira de fazer o seguinte no Microsoft Word 2016:

Estou procurando uma maneira de fazer uma tabela (ou borda) ser executada enquanto a página estiver, independentemente do conteúdo. Ele precisa preencher toda a altura possível, independentemente de conter uma linha ou 1.000 linhas.

Na imagem acima, o (1) é uma tabela que deve ocupar todo o espaço abaixo, independentemente do conteúdo. A tabela na parte inferior da página (3) é uma tabela que flutua para o fundo automaticamente. Se (1) se tornar muito grande para caber na página, ele empurrará automaticamente (3) para a próxima página. Isso já funciona flutuando (3) na parte inferior da página.

Eu não encontrei uma maneira de fazer a minha mesa (1) ocupar toda a altura. Talvez eu precise usar outra coisa além de uma mesa? Nesse caso, é muito importante que seja algo em que eu possa colocar uma mesa. Porque a tabela que você vê em (1) será gerada automaticamente a partir dos dados do usuário e precisa ficar em uma tabela. Eu posso colocar quase qualquer coisa ao redor da mesa, mas tem que permanecer uma mesa e pode ser estilizada de qualquer maneira que seja necessária. Um lado nota: Eu já tentei fazer uma caixa de texto, mas a tabela dentro de uma caixa de texto não funciona para os meus propósitos (porque este arquivo é editado posteriormente via programação .NET).

EDIT: uma nota importante. A captura de tela mostra duas linhas, mas após o processamento isso pode se tornar qualquer número de linhas (2, 3, até 10.000 linhas são possíveis).

Alguém tem alguma ideia? Você não acreditará quantas horas já passei nessa questão ...

    
por Steven Lemmens 19.04.2017 / 09:35

2 respostas

2

Eu consegui, mais ou menos. Não é perfeito, esp. se a tabela principal de comprimento variável chegar perto do final de uma página. As configurações de parágrafo Manter com o Próximo parecem não funcionar bem com as tabelas flutuantes, portanto, a tabela na parte inferior começará a ser exibida, linha por linha, no topo da próxima página. No entanto, assim que a tabela principal for longa o suficiente para empurrar todas as linhas da tabela inferior sobre a quebra de página, essa tabela irá retornar para a parte inferior da página seguinte. Além disso, em algumas ampliações, as bordas da página lateral "mascarada" aparecem parcialmente. Talvez ainda mais mexer com alguns dos valores consertaria isso. De qualquer forma, é um ponto de partida. Espero que os outros possam sugerir maneiras de refinar / simplificar isso.

O principal truque é usar uma borda de página, como Máté Juhász sugeriu em um comentário.

Primeiro, defina uma borda de página preta sólida de 1 ponto na parte inferior, esquerda e direita (não na parte superior). Clique em Opções , defina todas as margens como 0 pt , defina Medir de como Texto e, em seguida, limpe todas as 4 caixas de seleção em Opções .

Em seguida, insira 3 tabelas.

Tabela 1 (esta é a mostrada no topo da sua ilustração):

  1. Insira uma tabela que tenha quantas colunas e linhas forem necessárias.
  2. Em Propriedades da tabela , defina a largura preferida como 100% medida em Porcentagem . Deixe o conjunto de quebra de texto para None . Defina bordas superior e inferior em preto sólido de 1 ponto (e bordas internas, se você quiser, embora o exemplo em sua ilustração não as tenha). As bordas da página lateral servirão como bordas laterais.

Tabela 2 (a tabela principal que terá comprimento variável):

  1. Insira uma tabela que tenha quantas colunas e linhas forem necessárias. Certifique-se de que há um parágrafo em branco entre essa tabela e a tabela 1.
  2. Em Propriedades da tabela , defina a largura como 100% medida em Porcentagem . Deixe o conjunto de quebra de texto em None e adicione uma borda superior preta sólida de 1 ponto (e bordas internas, se desejar).
  3. Opcionalmente, reduza a altura do parágrafo entre as tabelas 1 e 2. Em seguida, selecione o parágrafo e aplique sombreamento branco a ele para mascarar as bordas da página lateral.

Tabela 3 (na parte inferior da página):

  1. Insira uma tabela que tenha quantas colunas forem necessárias e 1 linha a mais do que você precisa.
  2. Em Propriedades da tabela , defina a largura preferida como 100% medida em Porcentagem . Defina a quebra de texto para Em torno de , depois clique em Posicionamento e defina a posição horizontal como -1 pt em relação a Margem (para sobrepor a borda esquerda da página) e posição vertical para Inferior em relação à Margem . Definir um top preto sólido de 1 pt e bordas internas.
  3. Selecione a linha superior da tabela e mescle as células. Em seguida, com a linha superior ainda selecionada, vá para Propriedades da tabela > Bordas e sombreamento e aplicar sombreamento branco a essa linha para "mascarar" as bordas da página lateral.

    Neste ponto, a borda da página direita não estava completamente mascarada no meu documento, então voltei para Propriedades da tabela e mudei o campo Medida em em Tamanho para Pontos (essa é a unidade que minha versão do Word está configurada para usar, em vez de polegadas ou cm). Eu então aumentei ligeiramente a largura, em 2 pts ou mais. Este campo é um pouco complicado, porque alguns valores simplesmente não "pegam", então você pode ter que aumentar ou diminuir a margem esquerda ou direita da página em 1/2 pt ou mais para obter tudo para alinhar.

  4. Opcionalmente, ajuste as configurações de parágrafo para a linha superior de modo que corresponda ao parágrafo vazio entre as tabelas 1 e 2.

  5. Defina o parágrafo em branco entre as tabelas 2 e 3 com uma altura exata de 1 pt, sem espaço acima ou abaixo, para ocultá-lo de forma eficaz.

Aqui está o final da minha página. Os pontos circulados em vermelho mostram o minúsculo parágrafo entre a mesa principal e a mesa inferior, embora a tabela principal pareça realmente terminar bem abaixo. (É claro que esses pontos são visíveis apenas porque tenho marcas de parágrafo visíveis.)

    
por 20.04.2017 / 08:28
0

Isso funciona no Word 365 e deve funcionar no Word 2016 ...

  1. Selecione a linha que você precisa redimensionar, no seu caso, a linha que você marcou como "1".
  2. Clique com o botão direito e selecione "Propriedades da tabela"
  3. Selecione"Linha"
  4. Especifiqueaalturamínimaquevocêprecisa(vocêprecisarájogarcomissoparacorresponderàsuatabela)e,emseguida,verifiqueseacaixa"A altura da linha é:" está definida como "Pelo menos".
por 19.04.2017 / 09:48