Esta documentación está archivada y no tiene mantenimiento.

Cómo: Insertar texto en documentos de Word

NoteNota

En algunos ejemplos de código de este tema se utiliza la palabra clave this o Me o la clase Globals de una forma que es específica de las personalizaciones de nivel de documento, o dependen de funciones de personalizaciones de nivel de documento como los controles host. Estos ejemplos sólo se pueden compilar si se han instalado las aplicaciones requeridas. Para obtener más información, vea Características disponibles por combinación de productos.

Existen tres métodos principales para insertar texto en los documentos de Microsoft Office Word 2003:

Insertar texto en un intervalo

Utilice la propiedad Text de un objeto Range para insertar texto en un documento.

Para insertar texto en un rango

  1. Especifique un intervalo que sea el punto de inserción situado al principio de un documento e inserte el texto Nuevo texto (tenga en cuenta los espacios) en el punto de inserción.

    object start = 0; 
    object end = 0; 
    
    Word.Range rng = this.Range(ref start, ref end); 
    rng.Text = "New Text"; 
    
    
  2. Seleccione el objeto Range que ahora incluye el texto insertado.

    rng.Select();
    
    

Sustituir el texto de un rango

Si el intervalo no es un punto de inserción, el texto insertado sustituirá al texto del intervalo.

Para sustituir el texto de un rango

  1. Cree un objeto Range compuesto por los primeros 12 caracteres en el documento.

    object start = 0; 
    object end = 12; 
    
    Word.Range rng = this.Range(ref start, ref end); 
    
    
  2. Reemplace esos caracteres con la cadena " Nuevo Texto "

    rng.Text = "New Text"; 
    
    
  3. Seleccione el rango.

    rng.Select();
    
    

Insertar texto utilizando TypeText

El método TypeText inserta el texto en la selección. TypeText se comporta de forma diferente dependiendo del conjunto de opciones del equipo del usuario. El código del procedimiento siguiente declara una variable de objeto Selection y desactiva la opción Overtype si está activada. Si la opción Overtype está activada, se sobrescribe cualquier texto situado junto al punto de inserción.

Para insertar texto por medio del método TypeText

  1. Declare una variable de objeto Selection.

    Word.Selection currentSelection = Application.Selection; 
    
    
  2. Desactive la opción Overtype si está activada.

    if (Application.Options.Overtype) 
    { 
        Application.Options.Overtype = false; 
    } 
    
    
  3. Compruebe si la selección actual es un punto de inserción.

    Si lo es, el código inserta una frase utilizando TypeText y, a continuación, una marca de párrafo utilizando el método TypeParagraph.

    // Test to see if selection is an insertion point.
    if (currentSelection.Type == Word.WdSelectionType.wdSelectionIP) 
    { 
        currentSelection.TypeText("Inserting at insertion point. ");
        currentSelection.TypeParagraph(); 
    } 
    
    
  4. El código del bloque ElseIf comprueba si la selección es una selección normal. Si lo es, otro bloque If comprueba si la opción ReplaceSelection está activada. Si está activada, el código utiliza el método Collapse de la selección para contraer la selección a un punto de inserción en el inicio del bloque de texto seleccionado. Inserte el texto y una marca de párrafo.

    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();
        }
    
    
  5. Si la selección no es un punto de inserción ni un bloque de texto seleccionado, el código del bloque Else no hace nada.

    else
    {
        // Do nothing.
    }
    
    

También puede usar el método TypeBackspace del objeto Selection, que imita la funcionalidad de la tecla RETROCESO del teclado. No obstante, cuando se trata de insertar y manipular texto, el objeto Range ofrece más control.

El código siguiente es parecido al método completo que utiliza TypeText:

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;
}

Vea también

Mostrar: