Access - Uso funcion reemplazar con caracteres comodin

 
Vista:
sin imagen de perfil
Val: 67
Ha aumentado 1 puesto en Access (en relación al último mes)
Gráfica de Access

Uso funcion reemplazar con caracteres comodin

Publicado por Raul (42 intervenciones) el 17/12/2020 23:40:41
Buenas noches a todos.

Una pregunta que sera facil para muchos de vosotros.

Necesito sustituir todo lo que hay entre parentesis Pero me coge literal. como pongo el caracter comodin para que funcione de comodin??

He probado entre corchetes y tampoco.

1
2
3
Private Sub Comando88_Click()
Me.Opciones = VBA.Replace(Me.Opciones, "(*)", "")
End Sub

muchas gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Uso funcion reemplazar con caracteres comodin

Publicado por Anonimo (3316 intervenciones) el 18/12/2020 09:05:57
Una programación tan ambigua puede destruir en/con un click una base de datos.

Se esta trabajando con texto y para determinar el contenido de una pareja de paréntesis, basta localizar el comiendo (el paréntesis de apertura) y su correspondiente final (el de cierre) y todo ello en base a la posición actual en la cadena.

Con la función InStr se pueden localizar caracteres y con Left Mid y Right se puede recorrer la cadena pues permiten indicar comienzo y longitud, lo indispensable para un cortar/pegar (que es lo mismo que hace la función reemplazar)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Norberto
Val: 1.094
Oro
Ha mantenido su posición en Access (en relación al último mes)
Gráfica de Access

Uso funcion reemplazar con caracteres comodin

Publicado por Norberto (753 intervenciones) el 18/12/2020 11:30:53
Hola:

Si de lo que se trata es de eliminar lo que haya entre paréntsis, hazlo así:

1
2
3
4
5
6
7
8
9
10
11
12
Private Sub Comando88_Click()
    Dim i As Integer, j As Integer, NuevoTexto
 
    i = InStr(Me.Opciones, "(")
    j = InStr(i + 1, Me.Opciones, ")")
    NuevoTexto = "" 'Aquí se podría poner cualquier cosa.
 
    If j > 0 Then   'Existe un paréntesis de cierre después de un paréntesis de apertura
        Me.Opciones = Left(Me.Opciones, i - 1) & NuevoTexto & Mid(Me.Opciones, j + 1)
    End If
 
End Sub

Si quieres que se mantengan los paréntesis pon la línea 9 así:

1
Me.Opciones = Left(Me.Opciones, i) & NuevoTexto & Mid(Me.Opciones, j)

Un saludo,

Norberto.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 67
Ha aumentado 1 puesto en Access (en relación al último mes)
Gráfica de Access

Uso funcion reemplazar con caracteres comodin

Publicado por Raul (42 intervenciones) el 18/12/2020 12:35:31
Muchas gracias por contestar.

Luego lo probare aunque seguro que funciona.

Por otro lado con el código lo que quería hacer ver era lo que quería hacer pues es cierto que todas las dudas que tengo las soluciono en el foro con la búsqueda pero.... no hay ninguna de como poner lo que os comento.

Es decir saber como se pondría (*) para que te lo admita como comodín, que me quite los parentesís y lo que haya dentro de ellos, no como literal.
Como seria??? "([*])", con ' '

Así de paso si alguien quiere hacer algo con un comodín sabría como ponerlo.

Gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Uso funcion reemplazar con caracteres comodin

Publicado por Anonimo (3316 intervenciones) el 18/12/2020 20:58:13
Una posible solución a esa necesidad de ambigüedad (que es como se desea utilizar al asterisco) podría ir en la línea de repetir el carácter mas de una vez (normalmente tres o numero impar) tal como en otras expresiones utiliza la doble comilla y (si la memoria no me traiciona) en alguna parte mas.

Lo que permite exige o necesita lo impone el diseñador de la aplicación (en este caso concreto: los diseñadores de Microsoft Access) y si en alguna parte hay una solución ... estará en la ayuda de Access (en la letra pequeña, la que suele ignorarse).

¿Se puede hacer?: si

.- pero no de una forma tan elemental que cualquiera pueda destrozar el trabajo de otro (sea consciente o inconscientemente) pues en Access el borrado solo lo soluciona otra de las cosas que normalmente se ignora: la copia de seguridad
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar