Uso de Buscar y reemplazar en caracteres pre-pendientes (Microsoft Excel)
Mel a menudo quiere anteponer un personaje al principio de lo que sea que esté en un rango de celdas. Por ejemplo, es posible que desee agregar una letra al comienzo de algún texto (de modo que «123» se convierta en «A123» y «xyz» se convierta en «Axyz») o tal vez desee agregar un apóstrofe (por lo que «123» se convierte en «‘ 123 «y» xyz «
se convierte en» ‘xyz «). Mel se pregunta si esto se puede hacer usando Buscar y Reemplazar.
La respuesta corta es que no puede. Las capacidades de Buscar y Reemplazar en Excel son más limitadas que las de Word, donde tiene la capacidad de buscar comodines y usar el texto «Buscar qué» en lo que se reemplaza. (Estos son solo dos ejemplos de capacidades que faltan en Buscar y reemplazar de Excel).
Entonces, una posible respuesta es copiar sus datos en Word, usar Buscar y reemplazar para realizar los cambios y luego copiar los datos nuevamente. Por supuesto, corre el riesgo de perder su formato en el viaje de ida y vuelta, perder algo de su precisión y convertir todos los resultados de su fórmula en valores estáticos. Para muchos usuarios, estos no son riesgos aceptables.
Otra opción es utilizar las capacidades de concatenación de Excel. Por ejemplo, si los valores que desea anteponer están en la columna A (comenzando con A1), entonces usaría una fórmula como esta es la columna B:
="A" & A1
El resultado antepone la letra A a lo que esté en A1. Esto funciona para cualquier cosa pendiente previamente excepto un apóstrofe. Tratar de anteponer un apóstrofo termina con ‘123 o’ xyz, pero el apóstrofe es visible en la celda. El resultado no es el mismo, para Excel, que escribir un apóstrofe seguido de 123 o un apóstrofe seguido de xyz. (En el caso de escribir, el apóstrofe indica que el contenido de la celda debe tratarse como texto y el apóstrofo solo es visible en la barra de fórmulas, no en la celda en sí).
Si realmente desea cambiar los valores en una serie de celdas (lo que sugeriría el deseo de usar Buscar y Reemplazar), lo único que puede hacer es usar una macro para realizar los cambios. Si solo desea anteponer celdas que comiencen con un valor establecido (como 123) con una letra (como A), entonces una simple macro será suficiente.
Sub Prepend1() ToFind = "123" ToFindLength=Len(ToFind) ToPrepend = "A" For Each rcell In Selection If LCase(Mid(rcell.Value, 1, ToFindLength)) = LCase(ToFind) Then rcell.Value = ToPrepend & rcell.Value End If Next End Sub
Tenga en cuenta que la variable ToFind contiene el texto inicial que desea anteponer y la variable ToPrepend contiene lo que desea que aparezca antes de esa cadena. En este caso, cuando selecciona un rango de celdas y ejecuta la macro, cualquier cosa que comience con 123 (como «123» o «12345»
o «123D27X») tendrá la letra A agregada al frente de la célula.
Sin embargo, tal macro no ayuda cuando desea agregar la letra al frente de cada celda en el rango, no solo las que comienzan con 123.
En ese caso, necesita un enfoque diferente.
Sub Prepend2() Dim rng As Range Dim c As Range Dim ToPrepend As String ToPrepend = "A" ' Process only text and number constants Set rng = Selection.SpecialCells(xlCellTypeConstants, 3) For Each c In rng c.Value = ToPrepend & c.Value Next c End Sub
Esta macro toma un subconjunto de las celdas que seleccionó antes de ejecutarlo (solo aquellas celdas que contienen texto y valores numéricos) y luego agrega el contenido de la variable ToPrepend al inicio de la celda. Si desea cambiar lo que está precedido, simplemente cambie el valor de la variable. (Cabe señalar que si cambia ToPrepend a un apóstrofo, las celdas a las que se antepone el apóstrofo se comportan exactamente como si hubiera escrito un apóstrofo seguido del valor de la celda).
_Nota: _
Si desea saber cómo usar las macros descritas en esta página (o en cualquier otra página de los sitios ExcelTips), he preparado una página especial que incluye información útil.
link: / excelribbon-ExcelTipsMacros [Haga clic aquí para abrir esa página especial en una nueva pestaña del navegador]
.
ExcelTips es su fuente de formación rentable en Microsoft Excel.
Este consejo (3883) se aplica a Microsoft Excel 97, 2000, 2002 y 2003. Puede encontrar una versión de este consejo para la interfaz de cinta de Excel (Excel 2007 y posterior) aquí:
link: / excelribbon-Using_Find_and_Replace_to_Pre-Pend_Characters [Uso de buscar y reemplazar a caracteres pre-Pend]
.