¿Cómo puedo limitar el procedimiento de buscar y reemplazar para que se ejecute solo en ciertas páginas?
Estoy utilizando Microsoft Visual Basic en Word. Quiero limitar la función de buscar y reemplazar para que solo funcione en ciertas páginas del documento. ¿Cómo lo hago?
Hasta ahora, se ejecuta en todo el documento, lo cual no es preferible.
Sub X_entity()
'
' Reemplaza los símbolos de mayor y menor que por entidades html
'
'
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = ">"
.Replacement.Text = ">"
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
With Selection.Find
.Text = "<"
.Replacement.Text = "<"
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
End Sub
davy.ai
Para limitar la función de buscar y reemplazar para que solo funcione en ciertas páginas del documento, puedes utilizar el objeto integrado “Page” en el Modelo de Objetos de Microsoft Word.
Aquí tienes un ejemplo de código que limita la función de buscar y reemplazar para que solo funcione en las primeras dos páginas del documento:
En este código, primero establecemos el rango de páginas a buscar utilizando el método
doc.GoTo
, que toma un número de página o un elemento con nombre (comowdGoToPage
) como argumento. Luego creamos un nuevo objetoRange
con los puntos de inicio y finalización del rango de páginas.Luego, realizamos la operación de buscar y reemplazar dentro del rango de la página utilizando la propiedad
pageRange.Find
, que es igual aSelection.Find
pero opera en un rango específico. También ejecutamos la búsqueda y reemplazo dos veces, primero para el símbolo “>” y luego para el símbolo “<“.Nota que puedes modificar el rango de páginas cambiando los números de página en el método
doc.GoTo
. Por ejemplo, puedes buscar desde la página 3 hasta la página 5 cambiandoName:=1
yName:=2
aName:=3
yName:=5
, respectivamente.