Access - Contar veces que se repite un dato

 
Vista:
sin imagen de perfil

Contar veces que se repite un dato

Publicado por F (4 intervenciones) el 04/02/2017 12:45:08
Hola,

Estoy teniendo un problema para contar el número de veces que se repite un dato en una tabla.

Tengo una tabla con un campo de texto corto que se llama COD_EXT (que es el que quiero contar).
Y después tengo un formulario basado en esta tabla (para introducción de datos), en la que tendría dos campos COD_EXT y Nrep. Quisiera que cuando introdujera un valor en el campo del formulario COD_EXT se me calculara automáticamente el número de veces que se repite ese campo y que apareciera en el campo Nrep.

¿Alguien podría ayudarme?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Manuel
Val: 395
Bronce
Ha mantenido su posición en Access (en relación al último mes)
Gráfica de Access

Contar veces que se repite un dato

Publicado por Manuel (171 intervenciones) el 04/02/2017 20:27:53
Yo estaría encantado de darle la respuesta exacta, pero vendría bien que dieras algo más de datos, etc... Pero intentare darte las pistas para que lo hagas

Conocer cuantas veces se repite un valor del campo COD_EXT es relativamente sencillo:

1
SELECT COUNT(COD_EXT) AS result FROM laTabla WHERE COD_EXT = me.elcampodelform.value GROUP BY COD_EXT

Claro que si quieres ir a lo fácil, pues creas la consulta pero sin la parte WHERE, que lo haga de todos los elementos y la guardas con un nombre, por ejemplo "laconsulta":

1
SELECTCOD_EXT, COUNT(COD_EXT) AS result FROM laTabla GROUP BY COD_EXT

Y después usas la función Dbusq sobre esa consulta para completar Nrep. En el evento que se produce cuando se cambie el valor del otro campo, pues le metes un código del estilo:

1
me.nrep.value=DLookup("result", "laconsulta", "COD_EXT="+me.elcampoCod_Ext.value)

Y ya estaría.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

Contar veces que se repite un dato

Publicado por F (4 intervenciones) el 05/02/2017 15:41:40
Ante todo gracias por tu respuesta. Al final me decanté por la segunda opción que proponías, y hasta la consulta bien. Tras esto, al poner la segunda linea de código que me proponias:

1
me.Nrep.value=DLookup("result", "calc_CODPCR", "COD_EXT="+me.COD_EXT.value)

Me devuelve un el siguiente mensaje de error:

Captura-de-pantalla-2017-02-05-a-las-15.37.02

Donde E261 es el código que debería buscar.

Por otro lado, he intentado usar directamente la función Dcount

1
me.Nrep.value=Dcount("COD_EXT", "detPCR", "COD_EXT="+me.COD_EXT.value)

Donde COD_EXT es el campo de la tabla que se llama también igual en el formulario(cuyo nombre es PCR1), detPCR es la tabla.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 756
Plata
Ha mantenido su posición en Access (en relación al último mes)
Gráfica de Access

Contar veces que se repite un dato

Publicado por Jesús Manuel (375 intervenciones) el 06/02/2017 08:34:30
Has construido el DCount como si COD_EXT fuese un campo tipo número, para tipo texto tienes que variar la forma de redactar la condición, ya que tiene que ir entre comillas simples '

me.Nrep.value=Dcount("COD_EXT", "detPCR", "COD_EXT='" & me.COD_EXT.value & "'")


https://msdn.microsoft.com/es-es/library/office/ff834404.aspx
En la parte final de este link tienes ejemplos de como construir para tipo número, texto o fecha. Te servirá para Dcount, DLookUp, DMax,...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

Contar veces que se repite un dato

Publicado por F (4 intervenciones) el 06/02/2017 19:55:53
Ok! Muchas gracias! ya va
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar