Reemplazo del espacio entre las dos últimas palabras de cada párrafo (Microsoft Word)
Lisa necesita una forma de encontrar las dos últimas palabras en todos los párrafos de un documento y reemplazar el espacio entre esas palabras con un espacio que no se rompa. Se pregunta si esto es posible utilizando Buscar y reemplazar.
La forma más sencilla de hacer esto sin utilizar una macro es confiar en las capacidades de comodín de Buscar y reemplazar. La clave para hacer esto es recordar que realmente no necesita identificar las dos últimas palabras en lo que encuentra, solo necesita identificar la última palabra, con su espacio anterior. Siga estos pasos:
-
Presione Ctrl + H. Word muestra la pestaña Reemplazar del cuadro de diálogo Buscar y reemplazar.
-
Haga clic en el botón Más, si está visible. (Ver figura 1)
-
Seleccione la casilla de verificación Usar comodines.
-
En el cuadro Buscar, ingrese esto: () ([0-9A-Za-z ~ -] \ {1,}) ([. \! \? \:]) (^ 13). En el cuadro Reemplazar con, ingrese esto: ^ s \ 2 \ 3 \ 4. Haga clic en Reemplazar todo.
La forma en que esto funciona realmente puede requerir una pequeña explicación. El truco aquí es lo que está buscando, especificado en el paso 4. Cada elemento que se busca está rodeado por (paréntesis), por lo que es fácil seleccionarlos y hacer referencia a ellos en el cuadro Reemplazar con (paso 5). Los cuatro elementos del cuadro Buscar qué (de nuevo, entre paréntesis) son los siguientes:
-
()
-
([0-9A-Za-z ~ -] \ {1,})
-
([. \! \? \:])
-
(^ 13)
El primer elemento es un solo espacio. El segundo es cualquier número de dígitos, letras o guiones. (Es la última parte de este elemento – \ {1,} – que especifica que puede haber cualquier número de dígitos, letras o guiones.) Este es el elemento que especifica la palabra al final del párrafo, e incluye la posibilidad de que la palabra contenga guiones para que las palabras compuestas se traten como una sola palabra. El tercer elemento es cualquiera de los signos de puntuación que se muestran, y el cuarto elemento es el marcador de fin de párrafo real.
La especificación Reemplazar con (paso 5) simplemente reemplaza el primer elemento (el espacio) con un espacio que no se rompe y luego coloca el segundo, tercer y cuarto elementos en su lugar.
Cabe señalar que hay un par de escenarios en los que este enfoque de Buscar y reemplazar no funcionará. Primero, no funcionará si su párrafo tiene espacios al final, entre el signo de puntuación y el marcador de final de párrafo. Puede usar Buscar y reemplazar para deshacerse de estos en todo su documento antes de realizar la búsqueda y reemplazo anterior.
La segunda situación en la que no funcionará es si el párrafo termina con puntuación compuesta, como un punto seguido de una comilla o una comilla seguida de dos puntos. La búsqueda con comodines espera que haya un solo signo de puntuación al final del párrafo, y debe ser uno de los cuatro signos de puntuación especificados.
La tercera situación en la que no funcionará es si hay algún tipo de puntuación en la última palabra del párrafo. Por ejemplo, si la última palabra es en realidad un número como 1.234, la inclusión de la coma evitará que se produzca la coincidencia. Esto podría resolverse incluyendo la coma en el segundo elemento que se busca, pero la cantidad de veces que esto podría suceder parecía lo suficientemente minúsculo como para no permitirlo en los pasos anteriores.
Si prefiere un enfoque basado en macros a la sustitución, podría considerar utilizar la siguiente macro:
Sub LastTwo() Dim p As Paragraph Dim J As Integer Dim K As Integer Dim sTemp As String For Each p In ActiveDocument.Paragraphs J = p.Range.Words.Count For K = J To 1 Step -1 sTemp = p.Range.Words(K) If Right(sTemp, 1) = " " Then p.Range.Words(K) = RTrim(sTemp) & Chr(160) K = 1 End If Next K Next p End Sub
La macro recorre cada párrafo de su documento y luego retrocede a través de las palabras de los párrafos. Busca la primera palabra que contiene un espacio final y luego reemplaza ese espacio con un espacio que no se separa.
Hay una cosa interesante acerca de esta macro: puede que no funcione como se esperaba en todos los sistemas. Si, después de ejecutarlo, no obtiene un espacio sin interrupciones, sino que ve una pequeña «cruz» entre las dos últimas palabras, simplemente reemplace Chr (160) en el código con Chr (202). Sería mucho más fácil si Word incluyera una enumeración definida para un espacio sin interrupciones, pero no lo hace. En cambio, debe confiar en el código ASCII para un espacio sin interrupciones, que no parece ser el mismo en todos los sistemas.
_Nota: _
Si desea saber cómo usar las macros descritas en esta página (o en cualquier otra página de los sitios WordTips), he preparado una página especial que incluye información útil.
link: / wordribbon-WordTipsMacros [Haga clic aquí para abrir esa página especial en una nueva pestaña del navegador]
.
WordTips es su fuente de formación rentable en Microsoft Word.
(Microsoft Word es el software de procesamiento de texto más popular del mundo). Este consejo (13577) se aplica a Microsoft Word 2007, 2010, 2013, 2016, 2019 y Word en Office 365.