Excel, acumular datos en una celda

A ver si se puede hacer lo que intento..
Tengo una celda que toma los datos de otra hoja del mismo libro, Muestra los productos fabricados en cada tanda de producción.
Lo que intento hacer es que cada vez que se hacen productos, se SUME en esa celda, como que ACUMULE la cantidad, pero no se ( no se si existe la fórmula) para sumar los datos de la misma celda..

En las Col G tengo esta formula:
: =SI.ERROR(SI(B2="";"";INDIRECTO(B2&"!"&"G4"));"")   (Donde G$ de otra hoja me muestra los productos que se fabrican cada vez, se va modificando ese numero)

Yo quiero que cuando modifiquen ese numero se SUME a G (Fabricadas)

Pero a esa formula no le puedo sumar la misma celda : =SI.ERROR(SI(B2="";"";INDIRECTO(B2&"!"&"G4"));"")   '+G2

¿Se entiende? ¿Se puede hacer?

3 Respuestas

Respuesta
3

Aquí creo que hay 2 situaciones diferentes:

- Que siempre se tome el total que tiene esa celda en G2 (o la celda que sea de la otra hoja que no veo cómo se llama)
- O que se ejecute una macro cada vez que 'cambie' el contenido de la otra hoja y se 'acumule' solo la diferencia entre lo que tenía y tiene ahora.

Por supuesto que para este segundo paso se necesitan las referencias para la macro: nombre de hoja, celda donde buscar, etc.

Hola y gracias! Te envío esto a ver si me se explicar, capaz estoy preguntando mal

Qué pena pero con esas imágenes es muy difícil ver los contenidos y además no se observan los encabezados de las columnas.

De todos modos, lo más probable es que se tenga que resolver con una macro, que controle el cambio en celdas.

Enviame tu libro (o por lo menos las 2 hojas de este tema) indicando un ejemplo de lo que tenés y lo que debiera darte como resultado. Podés colocar estas imágenes en el mismo libro pero que sean legibles ;)

Mis correos aparecen en la sección Contactos de mi sitio:

http://aplicaexcel.com/contactos

Sdos.

Elsa

Elsa! gracias, te envío mail
saludos!

El Stock es la diferencia entre cantidades Fabricadas - Vendidas (y podría haber otras col de roturas, etc, que por ahora no se encuentran en tu modelo).

Entonces, tu col de últimas vendidas mantienen la fórmula que ya tenés y se observa en la imagen.

Faltaría que me comentes cómo se registran las cantidades Vendidas, si vienen de otra hoja o lo registrás manualmente en la col H.

Sdos!

Las cantidades vendidas es la única columna que queda desprotegida para que el usuario vaya registrando, es lo único que se me ocurre hacer que sea fácil de usar

Si, así lo pensé.

Pero inicia una nueva consulta, luego de cerrar ésta, para que te pase todo el proceso junto, porque también tengo que pasarte el cambio en la macro de los hipervínculos, para este caso.

Y de ese modo, por si a alguien le sirve el ejercicio, lo tendrá todo en una misma consulta.

Por ahora, en el Editor, en el objeto ThisWorkbook, coloqué la macro para que se ejecute en todas las hojas iniciadas con el texto 'Vela'. Esto es para no tener que colocarlas en cada hoja.

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
'solo se ejecuta en hojas 'vela'
     If Left(Sh.Name, 4) <> "Vela" Then Exit Sub
'solo se ejecuta al cambio en celda G4 de las hojas 'vela'
'acumulando en M4
    If Target.Address = "$G$4" Then     
       Target.Offset(0, 6).Value = Target.Offset(0, 6).Value + Target.Value
    End If
End Sub

Y la fórmula para la col I de Total Fabricadas, te quedaría así:

=SI.ERROR(@SI(B2="";"";INDIRECTO(B2&"!"&"M4"));0)

Sdos!

Respuesta
1

Si quieres acumular la cantidad en la celda de "Fabricadas" cada vez que se actualice el número en la otra hoja, puedes utilizar la función SUMA para lograrlo.

Aquí tienes una posible solución utilizando la función SUMA en la fórmula que ya estás utilizando:

=SI.ERROR(SI(B2="";"";INDIRECTO(B2&"!"&"G4"));0) + G2

En esta fórmula, la función SUMA se utiliza para sumar el valor actual en la celda G2 (que representa el valor acumulado anterior) y el valor obtenido de la otra hoja. El 0 al final de la fórmula se utiliza para asegurarse de que no se muestre un error si la celda está vacía.

Me da error...

Gracias por la respuesta y por tu tiempo

En la celda de "Fabricadas" (por ejemplo, en la celda G2), puedes utilizar la siguiente fórmula para acumular los valores cada vez que se actualice el número en la otra hoja:

=SI.ERROR(SI(B2="";"";INDIRECTO(B2&"!"&"G4"));0) + SUMA(G$1:G1)

Esta fórmula suma el valor actual obtenido de la otra hoja con la suma acumulada de las celdas anteriores en la columna G. La referencia G$1:G1 asegura que se sumen todas las celdas desde la primera hasta la celda anterior a la actual en la columna G.

Es importante tener en cuenta que debes ajustar la referencia de G$1:G1 en la fórmula si la celda de "Fabricadas" no está en la fila 2. Por ejemplo, si la celda de "Fabricadas" está en la fila 3, debes cambiar G$1:G1 a G$2:G2 en la fórmula.

Nono, es que no quiero que sume todas las celdas de la Col G, porque cada fila de la G es un producto diferente

Mi pregunta esta correcto la suma con la fórmula, no es un error, es la fórmula

Respuesta
1

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas