Vários hackers que podem ser úteis para escrever dissertações ou documentos grandes no MS Word

imagem

Cada um de nós sabe como o MS Word é uma ferramenta conveniente para preparar pequenos documentos. E cada um dos que enfrentou a preparação do documento, o número de páginas em que excede cem (mais você deve aderir a requisitos rígidos de formatação), conhece as principais desvantagens dessa ferramenta. Na minha vida, tive que enfrentar o layout de um documento de 500 páginas, e o número e o arranjo de figuras de tabelas e fórmulas nele mudavam constantemente de versão para versão. Eu gostaria de compartilhar meus “hacks da vida”, que tive que aplicar ao criar este documento. Alguns deles me foram sugeridos por amigos; tropeçou em alguns nos fóruns; alguns vieram consigo mesmo.

Esses truques simples ajudarão você com o layout de sua dissertação ou relatório.

Este artigo discute soluções para problemas:

  • criação de uma lista de referências
  • Declinação de referências cruzadas para figuras de tabela e fórmula
  • Transferir tabelas para uma nova página
  • Inserir fórmulas


Referências


Quando se trata de preparar uma dissertação de doutorado, a bibliografia se torna abruptamente um assunto delicado. Formatar a lista de acordo com o GOST 7.0.5–2008 manualmente se torna muito difícil. Os usuários mais avançados sabem que você pode fazer uma lista de referências na forma de parágrafos numerados com marcadores, que você pode fazer referência cruzada no texto e, em casos simples, alcançar o que deseja. Mas com uma grande lista de fontes, métodos manuais e semi-automáticos funcionam cada vez mais. Além disso, usuários avançados sabem que no Word você pode fazer bibliografias, mas não de acordo com o GOST, existem vários estilos "americanos". Graças a Deus na Internet, me deparei com det-randomcom seu estilo samopisny que pode compilar uma lista de referências de acordo com o GOST 7.0.5–2008, numere os links no texto na ordem de menção e diferencie o formato das fontes em inglês e russo A página do projeto no github: gost-r-7.0.5-2008 .

A lista de referências terá a seguinte aparência:

imagem

Declinação de referência cruzada


Um dos principais problemas é que o MS Word não pode se vincular. Este é o resultado do fato de que nas línguas germânicas não há declínios. O Microsoft Office é um programa americano; portanto, os americanos não precisam ter uma situação em que é necessário considerar a declinação de palavras por casos. Às vezes, isso pode levar a resultados engraçados, por exemplo, “ Na Figura 1.1. apresentado ... "," A Tabela 5.4 considera ... "ou" Levando em consideração a Fórmula (2.2) ... ", etc. Esse problema pode ser resolvido da seguinte maneira.

O nome da imagem é inserido por meios padrão.

Inserir figura: Inserir-> Link-> Nome-> Assinatura (figura).

imagem

A legenda para uma foto geralmente aparece assim:

Imagem { STYLEREF 1 \ s} { SEQ Figure \ * ARABIC }

Onde o primeiro campo entre colchetes se refere ao número do capítulo e o segundo é o valor exclusivo do número do contador de figuras. Um link para uma figura, tabela ou fórmula é inserido usando a ferramenta Referência cruzada.

imagem

Obviamente, a “Figura 1.1” é inserida. Depois, selecionamos uma parte do texto inserido, ou seja, “Figura”, ocultamos (o mesmo pode ser feito no menu Formatar -> Fonte). Em seguida, a palavra no caso desejado é adicionada antes do número. Ao atualizar o campo, a parte oculta do texto permanece oculta.

imagem

Migração de tabela


De acordo com muitos requisitos, se a tabela for transferida para outra página, o título na continuação deve repetir o nome da tabela e, às vezes, é necessário atribuir a palavra "continuação" ao nome da tabela, ou seja, ter a forma: "Nome da tabela ... Continuação". Mas nenhuma versão do MS Word insere um novo cabeçalho em uma tabela rasgada.

Para resolver esse problema, criei o seguinte truque. Eu adiciono outra linha ao início da tabela e combino todas as células, faço as bordas invisíveis e insiro o nome da tabela. E então repito essa célula ao passar para outra página.

E fecho a palavra "continuação" com um retângulo branco na cor da página sem bordas. Parece algo assim, linhas onduladas indicam bordas invisíveis.



O resultado será algo parecido com isto. Ao transferir, as 2 primeiras linhas serão exibidas, uma das quais é o nome da tabela e a segunda é o nome das colunas.

imagem

Abaixo está um código VBA de amostra para criar um cabeçalho de tabela:

Sub Table_head()
 Dim myTable As Word.Table
 Selection.InsertRowsAbove 1
 Set myTable = Selection.Tables(1)
    myTable.Cell(1, 1).Merge MergeTo:=myTable.Cell(1, myTable.Columns.Count)
    With myTable.Cell(1, 1)
        .Borders(wdBorderTop).Color = wdColorWhite
        .Borders(wdBorderRight).Color = wdColorWhite
        .Borders(wdBorderLeft).Color = wdColorWhite
     
    End With
  
    Selection.TypeText (" ")
    Selection.Style = ActiveDocument.Styles(" ")
    Selection.Range.Fields.Add Selection.Range, Type:=wdFieldEmpty, Text:="STYLEREF 1 \s", PreserveFormatting:=False
    Selection.TypeText (".")
    Selection.Range.Fields.Add Selection.Range, Type:=wdFieldEmpty, Text:="SEQ  \* ARABIC", PreserveFormatting:=False
End Sub

Fórmulas


As fórmulas são melhor inseridas em uma tabela com bordas invisíveis com uma linha e duas colunas. Faço isso com a ajuda de uma macro e, como resultado, recebo uma tabela, na primeira coluna da qual há uma inscrição no centro: "Lugar para a fórmula" e na segunda - no centro, entre parênteses. Entro na fórmula na primeira coluna e seu número na segunda coluna usando o comando "Nome". Refiro-me à fórmula usando o comando Referência cruzada e obtenho o número da fórmula entre parênteses (a célula da tabela é percebida pelo programa como uma nova linha).

imagem

Um exemplo de inserção de código VBA para inserção de uma fórmula é apresentado abaixo.

Sub formula()
ActiveDocument.Tables.Add Range:=Selection.Range, NumRows:=1, NumColumns:=2
        Selection.Tables(1).Columns(1).Width = CentimetersToPoints(14)
        Selection.Tables(1).Columns(2).Width = CentimetersToPoints(2.5)   
        Selection.Tables(1).Cell(1, 1).Range.Text = "  /"
        Selection.Style = ActiveDocument.Styles("  ")
        Selection.MoveRight Unit:=wdCell, Count:=1
        Selection.Style = ActiveDocument.Styles("  ")
        Selection.TypeText ("(")
        Selection.Range.Fields.Add Selection.Range, Type:=wdFieldEmpty, Text:="STYLEREF 1 \s", PreserveFormatting:=False
        Selection.TypeText (".")
        Selection.Range.Fields.Add Selection.Range, Type:=wdFieldEmpty, Text:="SEQ  \* ARABIC", PreserveFormatting:=False
        Selection.TypeText (")")
End Sub

Espero que esses truques simples sejam úteis para você.

Source: https://habr.com/ru/post/pt387993/


All Articles