Aplicación
La función Replace devuelve una cadena (palabra) en la que la subcadena (sílaba, letras contiguas) especificada se reemplaza por otra subcadena.
Síntaxis
Replace ( string1, find, replacement, [start, [count, [compare]]] )
Donde:
string1 es la cadena a modificar
find es la subcadena que se buscara en la string1, y que será remplazada por otro contenido.
replacement el nuevo contenido que remplazará a find en la string1.
start es opcional. Esta es la posición de string1 para comenzar la búsqueda. Si se omite este parámetro, la función REPLACE comenzará la búsqueda en la posición 1.
count es opcional. Este es el número de ocurrencias de reemplazar. Si se omite este parámetro, la función REPLACE reemplazará todas las ocurrencias de encontrar con replacement
compare es opcional. Puede ser cualquiera de lo siguieentes valores
Parámetro | Descripción |
---|---|
vbBinaryCompare | Comparación Binaria |
vbTextCompare | Comparación Textual |
vbDatabaseCompare | Realiza una comparación basada en la información de sus database |
Ejemplo de la Función
Replace("hola","ho","lo") te devolverá "lola"
Sintaxis en VBA
Sub ejemplo()
ojo = Replace("hola", "ho", "lo")
Range("a1").Value = ojo
MsgBox ("La nueva palabra es:" & ojo)
End Sub
Respuesta del Excel
(Para mayor visualización de la imagen, hacer click en la misma)
Elaborado por: Raúl Grey
16/02/2013 a las 10:19 pm
Buenas
La función remplaze es muy interesante, sobre todo si se necesita hacer cambios masivos en celdas de texto.
Saludos
Alberto Leiva
22/03/2013 a las 6:42 pm
me resulta útil cuando tengo que reemplazar códigos mal escritos en un listado generado desde una base de datos
24/03/2013 a las 7:47 pm
Tengo una BD que tiene una columna con celdas en formato texto, y en cada uno de estas debe existir un codigo que debe tener un LARGO de 4 caracteres, como lograr con una macro VBA que esto ocurra, anteponiendole uno, dos o tres ceros, segun corresponda, a cada celda que no completa los 4 caracteres.
No se si esta funcion combinada con otra, tal vez pueda brindar la solucion a este problema planteado.
Mil gracias a tod@s.
Jorge Luis Rojas Silva
19/05/2013 a las 11:19 pm
Hola Jorge.
Para tu problema habrán muchas soluciones, por eso quiero colaborar con una que quizás haga lo que buscas.
Los códigos son:
Sub ponerceros()
dato = ActiveCell.Value
nuevodato = "000" & dato
dato = Right(nuevodato, 4)
ActiveCell.Value = dato
MsgBox dato
End Sub
Nos vemos.
Suerte en tu solución.
19/05/2013 a las 11:36 pm
La función Replace tiene muchas opciones para aplicarse.
Por ejemplo, estos códigos reemplazan las vocales minúsculas, previamente convertidas con la función Lcase, en vocales mayúsculas.
Sub vocales()
palabra = LCase(ActiveCell.Value)
palabra = Replace(palabra, "a", "A")
palabra = Replace(palabra, "e", "E")
palabra = Replace(palabra, "i", "I")
palabra = Replace(palabra, "o", "O")
palabra = Replace(palabra, "u", "U")
ActiveCell.Value = palabra
MsgBox palabra
End Sub
11/07/2013 a las 12:07 pm
Esta función se ve muy practica y útil ya que permite reemplazar datos especificando los valores. Ademas facilita el trabajo para las grandes bases de datos.
08/09/2013 a las 10:32 am
Escribi lo siguiente en el excel; sin embargo, no me dio resultado, ya que aparece error. Me gustaría saber a que se debe.
Sub ejemplo()
ojo = Replace(“hola”, “ho”, “lo”)
Range(“a1″).Value = ojo
MsgBox (“La nueva palabra es:” & ojo)
End Sub
Gracias
02/11/2013 a las 2:00 am
Interesante función; en una base de datos con gran cantidad de datos sería muy útil, si se desa hacer los cambios a minúsculas de un grupo de palabras.
31/05/2014 a las 9:16 pm
Replace es una función muy útil para realizar cambios en una larga lista de inventarios en donde se busca actualizar los códigos de los ítems debido a cambios en el año, lo cual manualmente es poco práctico y tedioso.
01/08/2014 a las 11:58 pm
Permite corregir cualquier dato en grandes cantidades o modificar lo según las condiciones que se desea programar. Su utilización es muy amplia en cualquier ámbito laboral.
14/02/2015 a las 10:31 am
¿Cómo puedo reemplazar todos los datos encontrados o como puedo reemplazar una cantidad definida por nosotros para reemplazar?
27/02/2015 a las 6:17 pm
¿Como haría para reemplazar una cadena de caracteres seguidos en un cadena de texto por ejemplo:
sofia,de la crüz./mariela*estefania
los caracteres son "," "." " / " "*" comas,puntos,signo de multiplicacion y el slach
04/03/2015 a las 3:16 pm
Podrias aplicar replace de forma sucesiva para todos los casos a controlar, siempre que la lista de caracteres sea conocida y no cambie, sino podrías crear una función que reciba el texto, y evalue los caracteres uno por uno, si el caracter revisado esta dentro del rango que permites lo vas acumulando, al final esa función retorna solo lo acumulado.
26/03/2015 a las 10:08 pm
Creo que esta aplicación resume lo que se haría con BuscarV o BuscarH y luego reemplazar, como cuando se reemplaza N/A por ceros.
Gracias por los códigos.
12/07/2015 a las 12:41 pm
Esta función es muy útil para automatizar tu hoja de datos. Por ejemplo cuando queremos realizar un cambio en toda la hoja, se puede realizar mediante esta función sin necesidad de realizar el cambio uno por uno. Otro ejemplo útil de uso para este tipo de función es por ejemplo cuando queremos interpretar nuestros números de otra forma; por ejemplo, podemos cambiar un cero por "falta datos".
11/11/2016 a las 10:16 am
Hola, favor indicar cuál sería el código de macro Excel para restaurar la configuración por defecto cuando se hace una búsqueda. Es que por ejemplo, cuando se hace una búsqueda activando "Coincidir con el contenido de toda la celda", cuando se termina la macro, sigue activada dicha opción y necesito que antes de salir de la macro se desactive dicha opción y quede con la configuración por defecto.
07/04/2017 a las 3:16 pm
consulta necesito reemplazar un valor de una columna por otro numero
Ejemplo:
en una celda colocar el 2 y en otra el 5, que la formula de macro busque en la lista que describo abajo y lo reemplace, podrian ayudarme por favor.
1
2
3
4
5
6
7
8
9
10
19/07/2017 a las 12:28 am
Buen dia estimados Amigos, una pregunta como hago para convertir un numero a string, ejemplo 1,511.25 convertirlo a cadena 151125
13/04/2019 a las 2:17 am
Hola podría usarse para sustituir un apartado de texto por una imagen con el tamaño que tiene el la otra hoja.
Cells.Replace What:="", Replacement:=MODELO, LookAt:=xlPart, SearchOrder:=xlByRows
que tendria que hacer?