Error 3464 . No coinciden tipos de datos

En un formulario tengo un combo box con un id y detalle.

De acuerdo al valor del id, quiero abrir un subformulario que filtre los resultados con ese valor,

En la propiedad después de actualizar del combo box tengo,

Me.SubFormPrecioPrendas.Form.RecordSource = "SELECT * FROM PrecioPrendas WHERE [idPrendasfk]='" & Me.Cuadro_combinado4 & "'"

Me da error 3464, no coinciden los tipos de datos

He hecho una prueba cargando directamente un valor numérico de id, y me abre el subformulario filtrando los resultados por ese valor.

Lo que no logro es obtener del combo box un valor numérico que lo reconozca el sistema,

(También he realizado una prueba que un msgbox me muestre el valor del combo y es un valor numérico)

Agradezco desde ya cualquier aporte

Sds.

Ignacio

2 respuestas

Respuesta
1

Pruebe con esta instrucción

Me.SubFormPrecioPrendas.Form.RecordSource = "SELECT * FROM PrecioPrendas WHERE [idPrendasfk]=" & Val(Me.Cuadro_combinado4)

Lo anterior siempre y cuando el Me.Cuadro_combinado4 la columna dependiente corresponda con el idPrendasfk. Puede omitir los paréntesis [ ]

Respuesta
1

Si hay dos columnas en el cuadro combinado, una de ellas será la dependiente (el valor que devuelve) y la otra simplemente informativa.

La columna dependiente se puede configurar en modo diseño o la alternativa desde VBA es indicar cual de ellas se desea (en este caso el numero de columna comienza en cero)

Dos opciones: indicar el número de columna / el dato es numérico.

Columna + Texto :   ....  WHERE [idPrendasfk]='" & Me.Cuadro_combinado4.column(nn) & "'"
Columna + numero: ....  WHERE [idPrendasfk]= " & Me.Cuadro_combinado4.Column(nn)

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas