Macro selección word entre dos signos

Busco macro en word que pulsando la tecla de Función, seleccione un texto que existe entre dos signos. P.e: {la perrita}. Es decir, pulsando F11 debería seleccionar desde la primera llave hasta la última. Al quedar seleccionada, me dejaría sobreescribir encima

1 Respuesta

Respuesta
1

Algo así te será útil suponiendo que que solo hay una llave (de cada una) en la página/documento de busqueda (sospecho que no es el caso pero no lo has especificado). Igual así tengas más, esto te servirá de ejemplo. OJO, hay parte del código que se pueden obviar, pero lo dejo en tus manos:

Sub Macro_Busqueda()
Dim x As Integer, y As Integer
    Selection.Find.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
   Let x = Selection.Range.Start
    Selection.Find.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
Let y = Selection.Range.Start
      ActiveDocument.Range(x + 1, y).Select
End Sub

Para asignar algún método abreviado del teclado para activar dicha macro, debes ir a "Archivo" - "Opciones" - "Personalizar cinta de opciones" - "Personalizar" (Botón), en "Categorías" busccar "Macros", asegura que en "Guardar cambios en" esté el nombre del archivo, en "Macros" elige tu macro y en "Nueva tecla de método abreviado" asigna la que desees. Sugiero dar una leídita sobre el tema ya que no necesariamente cualquier tecla puede usarse.

Salu2

Abraham Valencia

Lo probaré muchas gracias.  Es buscar la primera llave o signo y desde éste, seleccionar hasta la siguiente llave de cierre o signo.   Una vez que se selecciona, es facil sobre escribir ya que el word elimina el texto seleccionado por los datos que se introduce por teclado.

Funciona bien, pero debe seleccionar también la llave del inicio y la llave del final, junto con el texto. Vamos resolviendo el problemas. Muuuuuuchas gracias

Solucionado, he modificado la fórmula: ActiveDocument.Range(x+1, y).Select, por esta otra, ActiveDocument.Range(x, y + 1).Select.

Muchas gracias. Me ha servido muchísimo. He visitado muchas páginas y visto muchos códigos y no había dado con la solución. Nuevamente agradecerte su colaboración. No obstante, seguiré probando.

Aja, efectivamente esa era la línea a cambiar, excelente.

Te cuento que sobre las macros de Word no hay tanta información como sobre las del Excel, incluso sobre Access hay más y esas afirmaciones son más evidentes cuando de información en castellano nos referimos.

De nada por la ayuda y, nos vemos.

Abraham Valencia

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas