Imprimir página | Cerrar ventana

Uso operador LIKE en referencia a un campo

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=84778
Fecha de impresión: 27/Marzo/2026 a las 00:23


Tema: Uso operador LIKE en referencia a un campo
Publicado por: AntuanBU
Asunto: Uso operador LIKE en referencia a un campo
Fecha de publicación: 27/Octubre/2019 a las 11:46
Buenos días,

Estoy intentando que a través de un formulario llamado "fOpositores" y pinchando un botón denominado "btnPagos" se me abra un formulario continuo denominado "fPagos", pero filtrando sólo los registros en los que el valor del campo "IdAlumno" del formulario "fPagos" coincida con el del campo "IdOposito" del registro actual del formulario "fOpositores". Lo estoy intentando realizar del siguiente modo:

En el evento del control "btnPagos", al hacer clic, he puesto la siguiente sentencia:

DoCmd.OpenForm "fPagos", , , "IdAlumno= " & Me.IdOposito

Esta sentencia me funciona perfectamente en otra BD en la que los valores de los campos implicados son de tipo numérico, pero en este caso en el que los tipos son de tipo texto (cadena) me sale el siguiente error:

"Error se sintaxis (falta operador) en la expresión de consulta

Por lo que he supuesto que podría ser porque el operador "=" sólo es válido para tipos numéricos, así que he cambiado la expresión anterior por la siguiente:

DoCmd.OpenForm "fPagos", , , "IdAlumno" Like "Me![IdOposito]"

Y en este caso no me salta el error anterior, pero se me abre el formulario "fPagos" sin ningún registro.

Estoy empezando con esto de VBA para Access y agradecería cualquier comentario al respecto.

Un saludo.



Respuestas:
Publicado por: Mihura
Fecha de publicación: 27/Octubre/2019 a las 12:03
Los campos tipo texto hay que delimitarlos con comilla simple

"IdAlumno= '" & Me.IdOposito & "'"


-------------
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: mounir
Fecha de publicación: 27/Octubre/2019 a las 12:05
Hola!

Al tratarse de un campo tipo texto hay que añadir comillas simples, Sería:

DoCmd.OpenForm "fPagos", , , "IdAlumno= '" & Me.IdOposito & "'"

De todas formas cuando insertas un comando botón con el asistente de controles te lo da hecho:

Selecciona abrir formulario >>>> Seleccionas el formulario a abrir >>> seleccionas la casilla de abrir formulario y buscar los datos específicos que van a mostrar >>>>> seleccionas en ambos lados los campos a vincular y das a "<->" y ya está.




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


Publicado por: AntuanBU
Fecha de publicación: 27/Octubre/2019 a las 12:15
Perfecto, SOLUCIONADO.

Muchas gracias a Jesús Mansilla y Mounir por la rapidez y acierto en las contestaciones.

Así da gusto empezar!!Smile

Un saludo.




Imprimir página | Cerrar ventana