Imprimir página | Cerrar ventana

Replace

Impreso de: Foro de Access y VBA
Categoría: Access y VBA
Nombre del foro: Access y VBA
Descripción del foro: Foro de programacion en Access (Con código y sin código)
URL: http://www.mvp-access.com/foro/forum_posts.asp?TID=86658
Fecha de impresión: 27/Marzo/2026 a las 06:53


Tema: Replace
Publicado por: rocjfl-b
Asunto: Replace
Fecha de publicación: 08/Abril/2023 a las 10:25
Buenas dias.

Nos hacen llegar una base de datos .mdb
En una de sus tablas existe un campo de texto denominado -domicilio- (sin los guiones) y en alguno de sus registros aparece este carácter: �

Queríamos reemplazarlo con la siguiente función:

Domicilio = Replace(Domicilio, "?", "º")

Parece que Replace no reconoce � como ?.

Alguna idea?.

Muchas gracias.



Respuestas:
Publicado por: mounir
Fecha de publicación: 08/Abril/2023 a las 12:21
Hola!

Tienes que escribir el símbolo tal cual para que funcione:-

Sería: Domicilio = Replace(Domicilio, "�", "º").


-------------
Un Saludo.


Publicado por: rocjfl-b
Fecha de publicación: 08/Abril/2023 a las 17:58
Hola mounir.

Si utilizo el portapapeles para pegar el simbolo "�" en Visual, lo que se copia es "?" y,  como comenté,  Replace no lo reconoce y por tanto no lo sustituye.
Desconozco como "escribir" el símbolo "�",  tengo la impresión que se trata de un simbolo unicode.
Como código ASCII no lo encuentro.


Publicado por: mounir
Fecha de publicación: 08/Abril/2023 a las 18:08
Hola!
Yo lo que hice era copiar y pegar y me funciona

-------------
Un Saludo.


Publicado por: 01loko
Fecha de publicación: 08/Abril/2023 a las 19:31
Mírate esto:
https://en.wikipedia.org/wiki/Specials_%28Unicode_block%29

como veras no se puede escribir ya que es un error de traducción!



-------------
Recordar de que soy nuevo y estoy aprendiendo.


Publicado por: rocjfl-b
Fecha de publicación: 09/Abril/2023 a las 00:07
mounir:  Copiar y pegar es lo que hago, pero el resultado es que se "pega" un símbolo de interrogación "?" y no el símbolo de error de traducción "�" que como apunta 01loko no se puede escribir.



Publicado por: mounir
Fecha de publicación: 09/Abril/2023 a las 02:40
Hola!

Has probado hacerlo en una consulta? Creo que ahí es donde te deja pegar el símbolo "�".
En un campo pones Domicilio_Reemb: Replace(Domicilio, "�", "º")

En VBE te lo convierte a "?".

-------------
Un Saludo.


Publicado por: rocjfl-b
Fecha de publicación: 09/Abril/2023 a las 18:04
Hola mounir!

Una consulta con Replace?...  No encuentré la función Replace en las consultas de access.

Con la macro "buscar y reemplazar" se soluciona el asunto, pero quisiera solventarlo con VBE si fuese posible.




Publicado por: mounir
Fecha de publicación: 09/Abril/2023 a las 18:42
Hola!

Una consulta con replace (Consulta de la tabla en cuestión, en vista de diseño pones lo que te dije en el mensaje anterior >> cambias a vista o en un formulario un campo idependiente cuyo origen de control = Replace(Domicilio; "�"; "º") lo tienes solucionado y no hace falta utlizar VBE.

Descarga el ejemplo que hice: http://filebig.net/files/Pyje8WhLti" rel="nofollow - rocjfl-b

-------------
Un Saludo.


Publicado por: lbauluz
Fecha de publicación: 09/Abril/2023 a las 19:29
Buenas.

Yo miraría a ver qué código ASCII es y lo usaría con ese valor ASCII.

Un saludo.

Luis.


-------------
El Búho es un pajarraco


Publicado por: joanka
Fecha de publicación: 09/Abril/2023 a las 21:51
Hola,

Estas intentando reemplazar � pensando que es "?" Puede ser cualquier carácter y te lo representa de esta manera. Deberías deducir qué carácter es realmente � y entonces usar replace.

En un formulario se ve de la misma manera?


Publicado por: lbauluz
Fecha de publicación: 10/Abril/2023 a las 09:56
Si tienes un editor hexadecimal, copia ahí el texto y mira el valor, lo pasas a decimal y tienes el valor de ese carácter.

Al menos es el método que yo uso cuando tengo ese tipo de problemas.

Un saludo.

Luis.


-------------
El Búho es un pajarraco


Publicado por: Mihura
Fecha de publicación: 10/Abril/2023 a las 10:27
Con un:
 ? Asc(Caracter)

en la ventana inmediato es suficiente.


-------------
Jesús Mansilla Castells.
Saludos desde Móstoles.

http://www.accessaplicaciones.com" rel="nofollow - Access Aplicaciones
http://www.tecsys.es" rel="nofollow - Tecsys.es


Publicado por: lbauluz
Fecha de publicación: 10/Abril/2023 a las 16:28
Publicado originalmente por Mihura Mihura escribió:

Con un:
 ? Asc(Caracter)

en la ventana inmediato es suficiente.

¿Y me lo dices a estas alturas? Wink

Luis.


-------------
El Búho es un pajarraco


Publicado por: rocjfl-b
Fecha de publicación: 10/Abril/2023 a las 21:21
Mihura e Ibauluz, como bién apuntaba 01loko, el simbolo en cuestión "�" no es un código ASCII. Si lo pegas (ya que no se puede escribir) en la ventana inmediato, el carácter que aparece es "?".

La solución que me funciona la hace mención mounir,  pero con una consulta de actualización del campo -Domicilio- que contiene el simbolo "�"; Actualizar a: Reemplazar([Domicilio];"�";"º")

Muchas gracias a todos!!.

Se puede cerrar el hilo


Publicado por: Mihura
Fecha de publicación: 10/Abril/2023 a las 21:22
Cuando me'nterao ... el DailyMu no es que se caracterice por la inmediatez ... LOL

-------------
Jesús Mansilla Castells.
Saludos desde Móstoles.

http://www.accessaplicaciones.com" rel="nofollow - Access Aplicaciones
http://www.tecsys.es" rel="nofollow - Tecsys.es



Imprimir página | Cerrar ventana