Imprimir página | Cerrar ventana

DLookup: No coinciden los tipos

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=84500
Fecha de impresión: 15/Diciembre/2019 a las 14:49


Tema: DLookup: No coinciden los tipos
Publicado por: Jaimevc
Asunto: DLookup: No coinciden los tipos
Fecha de publicación: 17/Mayo/2019 a las 04:09
Entiendo que cuando Access te dice que no coinciden los tipos significa  que estas combinando diferentes tipos de variables, o al menos aso es lo que he leído, y es que necesito extraer algunos datos de mi tabla y lo estoy haciendo de la siguiente manera:

Tengo dos variables declaradas en un módulo:

Global Var1 As string, Var2 As String

En un botón de mi formulario tengo lo siguiente:

Dim Art As String

Var1 = Me.Art
Var2 = Me.Des

Art = Nz(DLookup("Artículo", "Inventario, "Artículo = '"& Var1 &"'" And "Descripción ='"& Var2 &"'"),"")

Ya he intentado reemplazar directamente las variables con Me.Art y Me.Des, de hecho así es como lo tenía en un principio, los campos en la tabla en la cual se hace la búsqueda son de texto, así que no sé si he puesto algo de más o me falte algo, o es que necesito convertir mis variables a Function?  Se supone que solo estoy usando variables del tipo String, pero me sigue saliendo lo mismo, por cierto las variables las tenco en un módulo porque las utilizo tambien para otros procesos. Les agradezco desde ya su ayuda.




Respuestas:
Publicado por: rokoko
Fecha de publicación: 17/Mayo/2019 a las 08:03
Tienes declarado todo como string, Art, var1 y var2 que son??  Texto, numero o fecha??????

Si por casualidad articulo es numero quitale las comillas simples..


Publicado por: JuanW
Fecha de publicación: 17/Mayo/2019 a las 10:32
De momento, esta instrucción te tiene que dar fallos en la compilación:

Te faltan dobles comillas depués de Inventario

y te sobran unas dobles comillas antes de AND.


Art = Nz(DLookup("Artículo", "Inventario", "Artículo = '"& Var1 &"'" And "Descripción ='"& Var2 &"'"),"")

Saludos


Publicado por: xavi
Fecha de publicación: 17/Mayo/2019 a las 11:44
Y también sobran antes de Descripción

-------------
Xavi, un minyó de Terrassa

http://www.llodax.com" rel="nofollow - Mi web


Publicado por: Jaimevc
Fecha de publicación: 17/Mayo/2019 a las 16:04
Excelente, corregí sus observaciones, siempre había manejado solo un criterio, pero al momento de usar dos creía que cada uno iba en sus propias comillas, pero ya veo que todo el conjunto debe ir dentro de las mismas comillas y solo irías separadas por el and, así:

Art = Nz(DLookup("Artículo", "Inventario", "Artículo ='" & Var1 & "' And Descripción ='" & Var2 & "'"), "")

Y sí los puse en string porque las entradas son texto.

Gracias!!!



Imprimir página | Cerrar ventana