Sintaxis de Función Dbusq

Soy nuevo en access, lo que pasa es que manda un error al escribir la siguiente función:

DBúsq("[costo_hora]","[tafira_personal_docente]","[denominación]=" & [denominación])

La estoy escribiendo en una consulta, en donde quiero que me arroje el campo "costo_hora" de la tabla "tafira_personal_docente" y el campo común en la consulta y en la tabla es "denominación"

1 respuesta

Respuesta
1

Si lo usas en una consulta, como expresión de una campo calculado, tienes que usar el punto y coma (;) como separador. Además, si el campo denominación es de tipo texto, tendrás que encerrarlo entre comillas simples.

Es decir, que debería ser así:

Si es un campo numérico:

DBúsq("[costo_hora]";"[tafira_personal_docente]";"[denominación]=" & [denominación])

y si es de texto:

DBúsq("[costo_hora]";"[tafira_personal_docente]";"[denominación]='" & [denominación] & "'")

Excelente, me funciono muy bien. Nada mas que en mi versión de Access tengo que poner coma (,) en lugar de punto y coma (;) porque me marca error de sintaxis.

Ultima pregunta: ¿Sabes como ponerle un tipo de formato que use el separador de miles? porque en la parte "Hoja de Propiedades" no me desglosa las opciones de "Moneda", "Estándar", "Porcentaje", etc etc.

Hola oye otra cosa, si pongo:

sueldoxhora: DBúsq("[costo_hora]","[tafira_personal_docente]","[denominación]='" & [denominación] & "'")

Esta función sirve al 100% pero cuando en otro campo de la consulta pongo:

sueldoneto: [sueldoxhora]*15

Me envía un mensaje pidiéndome el valor de "sueldoxhora" como si este no fuera un campo de la consulta, me pide el valor como sí yo tengo que dárselo, para poder hacer la multiplicación tengo que poner:

sueldoneto: DBúsq("[costo_hora]","[tafira_personal_docente]","[denominación]='" & [denominación] & "'")*15

sabes porque?

Para darle el formato que quieras, puedes probar a usar la función Formato (consulta la ayuda del propio access para ver distintos usos y ejemplos, o puedes usar funciones de conversión de tipos, por ejemplo, CMoneda, para convertir el valor a un formato de moneda, CDoble, CEntero, para números...

En cuanto a la segunda pregunta, por mi experiencia con access, no puedes usar un campo calculado directamente para otro en la misma consulta. O lo haces como indicas, poniendo toda la fórmula de cálculo, o haces una nueva consulta sobre la que ya tienes y en esa nueva ya puedes hacerlo directamente (sueldoneto: [sueldoxhora]*15)

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas