Duda con cuadro combinado en access 2007

Tengo una duda con los cuadros combinados. Tengo puesto alguno asociado a una tabla en un formulario para no tener que escribir los datos a introducir, ya que hay muchos valores repetidos en los registros. El cuadro permiten nuevas ediciones si el valor no se encuentra ya en la tabla.
Lo que pasa es que al desplegar el cuadro aparecen todos los registros repetidos. Es decir, si hay tres registros con valor "ROJO", aparecen estos tres valores seguidos. ¿Hay alguna forma de que el cuadro combinado no muestre los registros repetidos?

1 respuesta

Respuesta
1
Supongamos que la tabla en la que basas el cuadro combinado se llama Colores y el campo a mostrar Color.
En el origen de la fila del cuadro combinado:
Select Color from Colores group by Color order by Color
Me cuentas.
Hola, Ángeles.
Inicialmente tenía esto:
SELECT [Colores].[Id], [Colores_color] FROM Colores ORDER BY [Colores_color];
Y funcionaba como expliqué, salían todos los registros, incluso repetidos.
Lo he puesto así:
SELECT [Colores_color] FROM Colores GROUP BY [Colores_color] ORDER BY [Colores_color];
Y entonces al desplegar el cuadro, no aparece nada.
Lo he cambiado a:
SELECT [Colores_color] FROM Colores GROUP BY [Colores_color] ORDER BY [Colores_color];
Y entonces sale el siguiente mensaje: Ha intentado ejecutar una consulta que no incluye la expresión especificada 'Id' como parte de una función de agregado.
¿Alguna idea de qué estoy haciendo mal?
Si en la sql seleccionas 2 campos, tienes que agrupar por los 2:
SELECT [Colores].[Id], [Colores_color] FROM Colores GROUP BY [Colores].[Id], [Colores_color] ORDER BY [Colores_color];
Si tienes problemas con el lenguaje sql, en origen de la fila picas en el cuadrado de la derecha, el de los ... y ahí puedes construir la consulta en modo diseño.
Me cuentas.
Hola, agrupar por los dos campos no cambia el resultado, siguen saliendo repetidos.
He puesto:
SELECT [Colores].[Id], Colores.[Colores_color] FROM Colores GROUP BY [Colores].[Id], Colores.[Colores_color] ORDER BY Colores.[Colores_color];
Y en modo diseño tengo tanto en el campo Id como en el color, en total, "Agrupar por", y en el campo color, en orden, "Ascendente".
Un saludo.
El campo Id ¿es el mismo para un color? Es decir:
Id Color
1 Rojo
2 Verde
1 Rojo
O por el contrario lo tienes:
Id Color
1 Rojo
2 Verde
3 Rojo
Me cuentas.
Es la segunda opción. Si quito el id no sale nada al desplegar el cuadro.
Lógicamente si agrupas por Id y color te repite los colores.
Tienes que agrupar solo por colores y en las propiedades del cuadro combinado, en nº de columnas poner 1 y en tamaño de columna poner solo un tamaño, porque si tienes por ejemplo 0;2,5 le estás diciendo que la 1ª columna tiene de ancho 0 y como solo tienes una...
Me cuentas.
Ángeles, he hecho estos cambios:
SELECT [Colores].[Id], [Colores].[Colores_color] FROM Colores GROUP BY [Colores_color] ORDER BY [Colores_color];
Columna dependiente:1 (porque si dejo 2 no sale nada)
Número de columnas: 1 (antes había 2)
Ancho: 4,5 (solo pongo uno porque sólo hay una columna)
Al desplegar el cuadro sale el siguiente mensaje: Ha intentado ejecutar una consulta que no incluye la expresión especificada 'Id' como parte de una función de agregado.
Un saludo.
SELECT [Colores].[Colores_color] FROM Colores GROUP BY [Colores_color] ORDER BY [Colores_color];
Columna dependiente:1
Número de columnas: 1
Ancho: 4,5
Así te tiene que salir, el mensaje viene porque no puedes seleccionar 2 campos y solo agrupar por 1
Saludos, Angeles
*** Si no te sale, si quieres puedes mandarme la BD (en access 2003 y comprimida en rar o zip si puede ser) al correo: [email protected] y la echo un vistazo

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas