Como: Inserir texto em documentos do Word
Se aplica a |
---|
As informações contidas neste tópico se aplicam apenas às especificado Ferramentas do Visual Studio para o Office projetos e as versões do Microsoft Office. Tipo de Projeto
Versão do Microsoft Office
For more information, see Recursos disponíveis pelo aplicativo e o tipo de projeto. |
Há três maneiras principais para inserir texto em documentos do Microsoft Office Word:
Inserir texto em um intervalo.
Substituir texto em um intervalo com o novo texto.
Use o método TypeText de um objeto Selection para inserir texto no cursor ou seleção.
Observação: Y ou também pode inserir texto controles de conteúdo e indicadores.Para mais informações, consulte Os controles de conteúdo and Indicador de Controlarar.
Inserindo texto em um intervalo
Use a propriedade Text de um objeto Range para inserir texto em um documento.
Para inserir texto em um intervalo
Especifique um intervalo no início de um documento e Inserir texto texto novo.
O exemplo de código a seguir pode ser usado em uma personalização de nível de documento.
Dim rng As Word.Range = Me.Range(Start:=0, End:=0) rng.Text = " New Text "
object start = 0; object end = 0; Word.Range rng = this.Range(ref start, ref end); rng.Text = "New Text";
O exemplo de código a seguir pode ser usado em um nível de aplicativo Adicionar - in.Este código usa o documento ativo.
Dim rng As Word.Range = Me.Application.ActiveDocument.Range(Start:=0, End:=0) rng.Text = " New Text "
object start = 0; object end = 0; Word.Range rng = this.Application.ActiveDocument.Range( ref start, ref end); rng.Text = "New Text";
Selecionar o objeto Range, que foi expandida de um caractere para o ComComprimento do texto inserido.
rng.Select()
rng.Select();
Substituindo texto em um intervalo
Se o intervalo especificado contiver texto, Tudo texto no intervalo é substituído com o texto inserido.
Para substituir o texto em um intervalo
Criar um objeto Range que consiste nos primeiros 12 caracteres no documento.
O exemplo de código a seguir pode ser usado em uma personalização de nível de documento.
Dim rng As Word.Range = Me.Range(Start:=0, End:=12)
object start = 0; object end = 12; Word.Range rng = this.Range(ref start, ref end);
O exemplo de código a seguir pode ser usado em um nível de aplicativo Adicionar - in.Este código usa o documento ativo.
Dim rng As Word.Range = Me.Application.ActiveDocument.Range(Start:=0, End:=12)
object start = 0; object end = 12; Word.Range rng = this.Application.ActiveDocument.Range( ref start, ref end);
Substituir Esses caracteres com a Cadeia de Caracteres texto novo.
rng.Text = " New Text "
rng.Text = "New Text";
Selecionar o intervalo.
rng.Select()
rng.Select();
Inserindo texto com TypeText
O método TypeText insere texto na seleção.TypeText se comporta de forma diferente dependendo das opções definido no computador do usuário.O código no procedimento a seguir declara uma variável de objeto Selection e desativa a opção de Overtype se ele estiver ativado.Se a opção de Overtype estiver ativada, Avançar, qualquer texto ao lado do cursor será substituído.
Para inserir texto usando o método TypeText
Declare uma variável de objeto Selection.
Dim currentSelection As Word.Selection = Application.Selection
Word.Selection currentSelection = Application.Selection;
Desative a opção de Overtype se ele estiver ativado.
If Application.Options.Overtype Then Application.Options.Overtype = False End If
if (Application.Options.Overtype) { Application.Options.Overtype = false; }
Teste para verificar se a seleção atual for um ponto de inserção.
Se for, o código insere uma frase usando TypeTexte, em seguida, uma marca de parágrafo usando o método TypeParagraph.
With currentSelection ' Test to see if selection is an insertion point. If .Type = Word.WdSelectionType.wdSelectionIP Then .TypeText("Inserting at insertion point. ") .TypeParagraph()
// Test to see if selection is an insertion point. if (currentSelection.Type == Word.WdSelectionType.wdSelectionIP) { currentSelection.TypeText("Inserting at insertion point. "); currentSelection.TypeParagraph(); }
O código no Bloquear de ElseIf testa para ver se a seleção é uma seleção normal.Se for, em seguida, outro Bloquear de If testa para ver se a opção de ReplaceSelection está ativada.Se for, o código usa o método de Collapse da seleção para recolher a seleção para um ponto de inserção no Iniciar do Bloquear de texto selecionado.Inserir o texto e uma marca de parágrafo.
ElseIf .Type = Word.WdSelectionType.wdSelectionNormal Then ' Move to start of selection. If Application.Options.ReplaceSelection Then .Collapse(Direction:=Word.WdCollapseDirection.wdCollapseStart) End If .TypeText("Inserting before a text block. ") .TypeParagraph()
else if (currentSelection.Type == Word.WdSelectionType.wdSelectionNormal) { // Move to start of selection. if (Application.Options.ReplaceSelection) { object direction = Word.WdCollapseDirection.wdCollapseStart; currentSelection.Collapse(ref direction); } currentSelection.TypeText("Inserting before a text block. "); currentSelection.TypeParagraph(); }
Se a seleção não for um ponto de inserção ou um Bloquear de texto selecionado, o código no Bloquear de Else faz nada.
Else ' Do nothing. End If
else { // Do nothing. }
Você também pode usar o método de TypeBackspace do objeto Selection, que imita a funcionalidade da tecla BACKSPACE no teclado.No entanto, quando se trata de para inserir e manipulação de texto, o objeto Range oferece você mais Controlarar.
O exemplo a seguir mostra o código completo:Para usar esse exemplo, executar o código de o ThisDocument ou a classe de ThisAddIn em seu projeto.
Friend Sub SelectionInsertText()
Dim currentSelection As Word.Selection = Application.Selection
' Store the user's current Overtype selection
Dim userOvertype As Boolean = Application.Options.Overtype
' Make sure Overtype is turned off.
If Application.Options.Overtype Then
Application.Options.Overtype = False
End If
With currentSelection
' Test to see if selection is an insertion point.
If .Type = Word.WdSelectionType.wdSelectionIP Then
.TypeText("Inserting at insertion point. ")
.TypeParagraph()
ElseIf .Type = Word.WdSelectionType.wdSelectionNormal Then
' Move to start of selection.
If Application.Options.ReplaceSelection Then
.Collapse(Direction:=Word.WdCollapseDirection.wdCollapseStart)
End If
.TypeText("Inserting before a text block. ")
.TypeParagraph()
Else
' Do nothing.
End If
End With
' Restore the user's Overtype selection
Application.Options.Overtype = userOvertype
End Sub
private void SelectionInsertText()
{
Word.Selection currentSelection = Application.Selection;
// Store the user's current Overtype selection
bool userOvertype = Application.Options.Overtype;
// Make sure Overtype is turned off.
if (Application.Options.Overtype)
{
Application.Options.Overtype = false;
}
// Test to see if selection is an insertion point.
if (currentSelection.Type == Word.WdSelectionType.wdSelectionIP)
{
currentSelection.TypeText("Inserting at insertion point. ");
currentSelection.TypeParagraph();
}
else
if (currentSelection.Type == Word.WdSelectionType.wdSelectionNormal)
{
// Move to start of selection.
if (Application.Options.ReplaceSelection)
{
object direction = Word.WdCollapseDirection.wdCollapseStart;
currentSelection.Collapse(ref direction);
}
currentSelection.TypeText("Inserting before a text block. ");
currentSelection.TypeParagraph();
}
else
{
// Do nothing.
}
// Restore the user's Overtype selection
Application.Options.Overtype = userOvertype;
}
Consulte também
Tarefas
Como: Formatar texto em documentos