Compartir a través de


Cómo: Ampliar intervalos en documentos

Actualización: noviembre 2007

Se aplica a

La información de este tema sólo se aplica a los proyectos de Visual Studio Tools para Office y versiones de Microsoft Office especificados.

Tipo de proyecto

  • Proyectos de nivel de documento

  • Proyectos de nivel de aplicación

Versión de Microsoft Office

  • Word 2003

  • Word 2007

Para obtener más información, vea Características disponibles por aplicación y tipo de proyecto.

Después de definir un objeto Range en un documento de Microsoft Office Word, se pueden cambiar sus puntos de inicio y final utilizando los métodos MoveStart y MoveEnd. Los métodos MoveStart y MoveEnd usan los mismos argumentos: Unit y Count. El argumento Count corresponde al número de unidades que hay que desplazar y el argumento Unit puede corresponder a uno de los siguientes valores WdUnits:

En el ejemplo siguiente se define un intervalo de siete caracteres. A continuación, mueve la posición inicial del intervalo siete caracteres después de la posición inicial original utilizando el método <codeEntityReference autoUpgrade="true">M:Microsoft.Office.Interop.Word.Range.MoveStart(System.Object@,System.Object@)</codeEntityReference>. Puesto que la posición final del intervalo también estaba situada siete caracteres después de la posición de inicio, el resultado es un rango que consta de cero caracteres. Posteriormente, el código mueve la posición final siete caracteres más adelante de la posición final actual utilizando el método <codeEntityReference autoUpgrade="true">M:Microsoft.Office.Interop.Word.Range.MoveEnd(System.Object@,System.Object@)</codeEntityReference>.

Para ampliar un intervalo

  1. Defina un intervalo de caracteres. Para obtener más información, vea Cómo: Definir y seleccionar rangos en documentos.

    El ejemplo de código siguiente se puede usar en una personalización de nivel de documento.

    Dim rng As Word.Range = Me.Range(Start:=0, End:=7)
    
    object start = 0;
    object end = 7;
    Word.Range rng = this.Range(ref start, ref end);
    

    El ejemplo de código siguiente se puede usar en un complemento de nivel de aplicación. En este ejemplo se usa el documento activo.

    Dim rng As Word.Range = Me.Application.ActiveDocument.Range(Start:=0, End:=7)
    
    object start = 0;
    object end = 7;
    Word.Range rng = this.Application.ActiveDocument.Range(
        ref start, ref end);
    
  2. Utilice el método MoveStart del objeto Range para mover la posición de inicio del rango.

    rng.MoveStart(Unit:=Word.WdUnits.wdCharacter, Count:=7)
    
    object unit = Word.WdUnits.wdCharacter;
    object count = 7;
    rng.MoveStart(ref unit, ref count);
    
  3. Utilice el método MoveEnd del objeto Range para mover la posición final del intervalo.

    rng.MoveEnd(Unit:=Word.WdUnits.wdCharacter, Count:=7)
    
    unit = Word.WdUnits.wdCharacter;
    count = 7;
    rng.MoveEnd(ref unit, ref count);
    

Código de personalizaciones de nivel de documento

Para ampliar un intervalo en una personalización de nivel de documento

  • En el ejemplo siguiente se muestra el código completo de una personalización de nivel de documento. Para usar este código, ejecútelo desde la clase ThisDocument del proyecto.

    ' Define a range of 7 characters.
    Dim rng As Word.Range = Me.Range(Start:=0, End:=7)
    
    ' Move the start position 7 characters.
    rng.MoveStart(Unit:=Word.WdUnits.wdCharacter, Count:=7)
    
    ' Move the end position 7 characters.
    rng.MoveEnd(Unit:=Word.WdUnits.wdCharacter, Count:=7)
    
    // Define a range of 7 characters.
    object start = 0;
    object end = 7;
    Word.Range rng = this.Range(ref start, ref end);
    
    // Move the start position 7 characters.
    object unit = Word.WdUnits.wdCharacter;
    object count = 7;
    rng.MoveStart(ref unit, ref count);
    
    // Move the end position 7 characters.
    unit = Word.WdUnits.wdCharacter;
    count = 7;
    rng.MoveEnd(ref unit, ref count);
    

Código de complementos de nivel de aplicación

Para ampliar un intervalo en un complemento de nivel de aplicación

  • En el ejemplo siguiente se muestra el código completo de un complemento de nivel de aplicación. Para usar este código, ejecútelo desde la clase ThisAddIn del proyecto.

    ' Define a range of 7 characters.
    Dim rng As Word.Range = Me.Application.ActiveDocument.Range(Start:=0, End:=7)
    
    ' Move the start position 7 characters.
    rng.MoveStart(Unit:=Word.WdUnits.wdCharacter, Count:=7)
    
    ' Move the end position 7 characters.
    rng.MoveEnd(Unit:=Word.WdUnits.wdCharacter, Count:=7)
    
    // Define a range of 7 characters.
    object start = 0;
    object end = 7;
    Word.Range rng = this.Application.ActiveDocument.Range(
        ref start, ref end);
    
    // Move the start position 7 characters.
    object unit = Word.WdUnits.wdCharacter;
    object count = 7;
    rng.MoveStart(ref unit, ref count);
    
    // Move the end position 7 characters.
    unit = Word.WdUnits.wdCharacter;
    count = 7;
    rng.MoveEnd(ref unit, ref count);
    

Vea también

Tareas

Cómo: Establecer rangos en documentos de Word

Cómo: Contraer intervalos o selecciones en documentos

Cómo: Definir y seleccionar rangos en documentos

Cómo: Recuperar los caracteres inicial y final de los intervalos

Cómo: Excluir marcas de párrafo al crear intervalos