FUNCION REPLACE PARA ACCESS 97 JUAN M. AFAN DE RIBERA Ahora la he reformado para que haga lo que hace el Replace original de Access 2000 o superior (salvo el tipo de comparación, que es el último parámetro de la función Replace). Esta función, que he llamado Replace97, tiene dos argumentos opcionales más: Inicio -> posición de la cadena "Expresion" en donde se empezará a buscar. Si se omite o es menor de 1, se empezará a buscar desde el principio de la cadena. Contar -> número de veces en que se sustituirá la cadena "Encontrar" por "reemplazarCon". Si se omite se sustituirán todas las coincidencias. Si Contar excede del número de coincidencias no dará error, simplemente sustituirá todas las coincidencias y saldrá al llegar al final de la cadena. Si alguien más quiere probarla y notificarme si comete algún fallo o incongruencia que no haya detectado, le agradeceré que me lo diga, gracias. Function Replace97(Expresion As String, Encontrar As String, reemplazarCon As String, Optional Inicio As Long = 1, Optional Contar As Long = -1) As String Dim posEncontrado As Long Dim cadtmp As String Static numero As Integer If Inicio < 1 Then Inicio = 1 If Contar = -1 Or numero < Contar Then numero = numero + 1 posEncontrado = (InStr(Inicio, Expresion, Encontrar) - 1) If posEncontrado = -1 Then Replace97 = Expresion Else cadtmp = Left(Expresion, posEncontrado) cadtmp = cadtmp & reemplazarCon cadtmp = cadtmp & Right(Expresion, Len(Expresion) - (posEncontrado + Len(Encontrar))) Replace97 = Replace97(cadtmp, Encontrar, reemplazarCon, Inicio, Contar) End If Else Replace97 = Expresion End If numero = 0 End Function -- Saludos desde BCN happy [MVP - Ms Access]