Access - Sumar solo determinados valores

   
Vista:

Sumar solo determinados valores

Publicado por Diego (32 intervenciones) el 13/10/2015 16:03:10
Hola, necesito obtener en un campo la suma o el saldo de varios valores de un solo criterio, son maquinas que se le cargan creditos y diariamente se van gastando. Por medio de otra planilla estos datos se van cargando diariamente. Pero necestito, una casilla en el formulario que me ponga el saldo x maquina.

La tabla es " SALDOS MAQUINAS "
Ej
Fecha Maquinas Saldo
01/09/2015 1401 100
01/09/2015 1402 80
01/09/2015 1403 200
02/09/2015 1401 50
02/09/2015 1402 100
02/09/2015 1403 90
03/09/2015 1401 -60


Necesito que al elegir la maquina 1401 (ya funciona lo de elegir la maquina) en esa casilla me ponga el valor del saldo, en este caso sería " 90 ".
Yo pongo esto y no funciona, tampoco da error, solo queda en blanco.

DSuma("[SALDO]";"[SALDOS MAQUINAS]";[MAQUINA]=[Formularios]![INICIO Y SALIDA VENDEDORES]![MAQUINA Nº])

Saludos, espero puedan 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

Sumar solo determinados valores

Publicado por Enrique Heliodoro (1663 intervenciones) el 13/10/2015 16:57:18
Las reglas que condicionan a las funciones de dominio, indican con claridad meridiana que "los tres parámetros de la función se han
de 'pasar' como cadenas de texto".

No veo porque no se aplica la regla en el tercer parámetro (si se ha hecho correctamente con los dos anteriores)
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
Imágen de perfil de Neckkito

Sumar solo determinados valores

Publicado por Neckkito (1104 intervenciones) el 13/10/2015 16:59:48
Hola!

¿Qué es lo que veo "mal"?

1.- Ponle un signo igual (=) antes del DSum()

2.- En tu tabla dices que el campo se llama [Maquinas], y en tu expresión pones [MAQUINA]

3.- Te hacen falta unas comillas y una concatenación en el criterio de filtro

4.- Si el campo calculado está en el mismo formulario donde seleccionas la máquina puedes obviar el Forms!... Tu expresión quedaría así:

=DSuma("[SALDO]";"[SALDOS MAQUINAS]";"[MAQUINA]=" & [[MAQUINA Nº])

5.- Si está en otro formulario tu expresión debería quedar así (fíjate que le añado "value" al final:

=DSuma("[SALDO]";"[SALDOS MAQUINAS]";"[MAQUINA]=" &[Formularios]![INICIO Y SALIDA VENDEDORES]![MAQUINA Nº].value)

6.- Todo lo anterior presupone que el campo [Maquinas] (o [MAQUINA]) es de tipo numérico. Si por casualidad fuera un campo de tipo texto tu expresión debería quedar así:


=DSuma("[SALDO]";"[SALDOS MAQUINAS]";"[MAQUINA]='" & [[MAQUINA Nº] & "'")

o así

=DSuma("[SALDO]";"[SALDOS MAQUINAS]";"[MAQUINA]='" &[Formularios]![INICIO Y SALIDA VENDEDORES]![MAQUINA Nº].value & "'")

7.- Finalmente, te recomiendo no utilizar caracteres reservados o "raros". El (º) de (Nº) podría darte problemas.

A ver si con esto logras resolverlo.

Un saludo,
firmaMail
http://bit.ly/neckkito
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

Sumar solo determinados valores

Publicado por Diego (32 intervenciones) el 13/10/2015 19:20:30
Gracias por tu respuesta, quizás no me di bien a entender, porque no entiendo lo explicado, igualmene pruebo de una y otra forma y nada.
Voy denuevo, tengo una tabla con el ingreso de las maquinas, otra con los movimientos de carga de valores a esas maquinas (se le carga valores en dinero, pero no deja de ser un número redondo). Y luego tengo un formulario en el que entran los datos de una ves terminada la jornada laboral en el cual necesito que una casilla del Formulario de Access, me ponga el saldo anterior de cada maquina, que se ira ajustando segun las ventas o las nuevas cargas que le fuera dando. El ejemplo que puce anteriormente se ría lo que necesito, osea como consigo que me ponga el valor de " 90 " (que es el del ejemplo).

Muchas gracias!!
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

Sumar solo determinados valores

Publicado por Enrique Heliodoro (1663 intervenciones) el 13/10/2015 21:55:23
Quizás no has dedicado suficiente tiempo y atención a las respuestas (porque el nivel de conocimientos se da por supuesto).

La condición de esa función de dominio 'debería' dar error al escribirla, pues NO ESTA ENCERRADA ENTRE DOBLES COMILLAS (ojea la ayuda de Access para entenderlo).

Además (y en vista a lo que muestras) el campo saldo ALINEADO A LA IZQUIERDA hace sospechar que es de texto y los textos .... no son números (si 'los duendes' están de tu parte y Access es magnánimo puede funcionar), pero será por casualidad.

Las alternativas a este problema son cuando menos dos:
.- una es ==> convertir ese campo a numérico (la adecuada)
.- dos==> utilizar una función para evaluar ese texto como numero (la función es 'VAL()' y en la ayuda de Access tienes literatura sobre ella, no la desperdicies).

(Lo remarcado en mayúsculas y negrita es intencionado para llamar la atención)
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

Sumar solo determinados valores

Publicado por diego (32 intervenciones) el 14/10/2015 01:43:36
Mira... solo hice una consulta para ver si alguien podía darme una mano, pero no era para que me trates de esa forma.
Date cuenta que eso que vos decis que es numero pero esta tomado como texto, es realmente numero ya que lo que estas viendo escrito, es solo un ejemplo que yo tipie, y si te molesta tanto la gente que ignora determinadas cuestiones como estas, y por una respuesta te irritas de esa forma, para que contestas????
Igualmente, ya esta... no te voy a responder mas, quedate con tus conocimientos, que no parecen ser pocos, pero te falta un poco mas de humanidad para responder con mas alteza.
Saludos!!
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

Sumar solo determinados valores

Publicado por Enrique Heliodoro (1663 intervenciones) el 14/10/2015 03:36:04
Haces una pregunta poniendo un ejemplo (al que se supone real).

Se te ofrecen dos respuestas y la tuya es decir que 'somos tan tontos que no te entendemos' y repites lo mismo.

Mi respuesta 'a tu respuesta' es que no has leído mi respuesta (o no la has entendido, pero si no se la entiende se pide aclaración)

Para colmo y como disculpa ante una pifia que implica que los datos 'son inventados' te tapas con la capa de la ofensa, cuando tu has sido el primero en no actuar de forma correcta.

No tengo nada mas que decir ni aclarar toma lo que te sirva y para la próxima no cuentes cuentos (expón datos reales, no inventados) y obtendrás respuestas mas concretas
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
Imágen de perfil de Neckkito

Sumar solo determinados valores

Publicado por Neckkito (1104 intervenciones) el 14/10/2015 09:33:35
Hola Diego:

Lo que estoy viendo es que podría haber dos cosas que causan esta situación:

1.- Que no estés utilizando bien la expresión en alguno de sus componentes, o bien
2.- Que haya algo en tu BD que no somos capaces de ver que hace que la expresión no funcione.

Te cuelgo un pequeño ejemplo para que puedas examinarlo. La verdad es que es muy simple. Echa un vistazo e intenta compararlo con tu BD a ver si puedes pillar, salvando las distancias, qué diferencias puedes detectar: http://www.mediafire.com/download/d93ay9zyxc27kez/Diego.DSum.zip

Por otra parte, y respecto del punto 2, por ponerte un ejemplo (que desconozco si será el caso), si por casualidad el número de máquina lo seleccionas de un combo y proviene de una tabla donde hay una clave principal, aunque tú veas el número de máquina en el combo, probablemente el valor que realmente devuelve dicho combo es el identificador de la clave principal. En ese caso el criterio de filtro de la expresión nunca filtrará por el número de máquina. Ojo: es sólo un supuesto de "algo" que podría ser...

Mira el ejemplo que te envío e intenta compararlo con lo que tienes. Si aún así no te sale lo único que se me ocurre para poderte ayudar es que prepares una miniBD basada en tu BD con sólo los elementos que afectan a tu problema y la subas aquí para poder intentar ver qué está pasando.

Un saludo,

Neckkito
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

Sumar solo determinados valores

Publicado por diego (32 intervenciones) el 14/10/2015 14:44:53
Neckkito, muchas gracias por tu tiempo y espectacular respuesta. Lo he podido solucionar de esta forma anoche, =DSuma("[SALDOS MAQUINAS]![SALDO AGREGAR]";"SALDOS MAQUINAS";"[SALDOS MAQUINAS]![MAQUINA]=[MAQUINA Nº]").
Pero igual no paro de sorprenderme por tu dedicación en el ejemplo que me has enviado.
Nuevamente, gracias!!
Saludos.
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

Sumar solo determinados valores

Publicado por Diego (32 intervenciones) el 15/10/2015 14:29:04
Hola, buenas tardes, tengo otro interrogante. Como te conté anteriormente pude hacer que la formula de el resultado que quería, solo que ahora tengo el problema de que no me guarda los valores de cada carga de movimientos de algunos campos. Necesito que esos valores queden registrados en la tabla (que son Saldo Anterior y Rendición), ya que esto sería aplicado a muchos registros diarios y de esa forma también poder aplicar informes diarios y mensuales de toda la información. Te hice, modificando la minibase de datos que me enviaste, otra para que veas lo que me pasa. Lo que quiero es que se documente o guarden los valores tal cual se ve en el formulario, y no como se ve en el subformulario ya que saca datos de la tabla.
Aquí te dejo el link: http://www.mediafire.com/download/8d7bp9ocgkg6o3l/Diego.DSum+%281%29.accdb
Saludos y gracias!!
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
Imágen de perfil de Neckkito

Sumar solo determinados valores

Publicado por Neckkito (1104 intervenciones) el 15/10/2015 15:17:38
En el formulario:

1.- Ve al botón "Agregar campos existentes" y añades al formulario el campo [SALDO ANTERIOR]
2.- Añade el campo [RENDICION]
3.- A ambos les pones la propiedad visible en NO (Propiedades del control -> Formato)
4.- Al primero lo llamas txtSA (Propiedades -> Pestaña Otras -> Nombre)
5.- Al segundo lo llamas txtRend
6.- En el evento "Después de actualizar" del campo [SALDO ACTUAL] genera el siguiente código:

...
Private Sub SALDO_ACTUAL_AfterUpdate()
Me.txtSA.Value = Me.SALDO_ANTERIOR.Value
Me.txtRend.Value = Me.RENDICION.Value
End Sub
...

Ten en cuenta que como los datos se van a guardar en la tabla en tu subformulario también aparecerán. Si no los quieres ver o bien elimina esos campos del subformulario o bien oculta esas columnas.

Y listos.

Saludos,

Neckkito
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

Sumar solo determinados valores

Publicado por diego (32 intervenciones) el 15/10/2015 16:20:37
NO PARO DE SORPRENDERME POR LA GRAN MANO QUE ME HAS DADO, FUNCIONA MUY BIEN!!
GRACIAS!!
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