Saltar al contenido

macro sumar


HCHM

Recommended Posts

publicado

Hola buenas tardes!

La siguiente macro la quiero utilizar para que me sume valores que voy capturando en determinadas celdas y los acumule en una especifica celda.

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Range("A2:K10"), Target) Is Nothing Then
    Hoja4.[A1] = Hoja4.[A1] + Target
End If
End Sub

El problema donde me atore es que necesito que solo sume los valores que estoy capturando y no adicione los que ya estaban con anterioridad. por ejemplo: suponiendo que inicio todo de cero y la primer captura es de 100 en la celda "A2" y en la celda "K10" capturo 50 lo que da un total de 150 que es lo que aparecerá en la celda "A1",después, en otro evento, capturo 40 en la celda "A2" y 30 en la "K10"  lo cual da un total de 70 que es lo que necesito que aparezca en la celda "A1" y no 220 que es la suma de la primer captura mas la segunda.

Muchas gracias y espero haberme explicado.

publicado

si vas a utilizar el evento '_change' necesitas tomar en consideración eventualidades como...

  1. tu código monitorea un rango de 99 celdas: "A2:K10"
  2. al código NO le estás "diciendo" (claramente) que quieres monitorear cambios (según parece) solo a cada DOS celdas
  3. si no siempre requieres acumular cada dos celdas modificadas, convendría agregar un "contador" (para descartar acumulaciones previas)
  4. si cambias dos veces una misma celda, se debe considerar que ocurrieron los dos cambios que esperabas ? (que cifra se debe acumular ?)
  5. si se modifican/cambian dos (o más) celdas al mismo tiempo, el "Target" corresponde a TODAS las celdas modificadas
  6. en esta eventualidad, ese "+ Target" te va a ocasionar errores en tiempo de ejecución (a menos que hagas una "suma" del "Target")
  7. si se modifican dos (o más) celdas a la misma vez, pudiera ser que NO TODAS formen parte del "Intersect" (pero SI del "Target")

hay más, pero no quiero abusar de tu paciencia, así que... si comentas con mayor claridad (y 3 o 4 ejemplos) "que es" (exactamente) lo que necesitas controlar (???)

saludos,
hector.

  • 2 weeks later...
publicado

Hola Hector:

Tengo una serie de conceptos de gasto (luz,agua,mantenimiento,materiales,etc) que de acuerdo como me llegan las facturas voy ingresando en la celda correspondiente para conocer el costo total de cada concepto.

Lo que necesito es que cuando me llegue una cantidad "x" de facturas, que corresponden a diferentes conceptos, estas me sean sumadas en una celda específica para validar que lo que ingrese es igual al valor total de dichas facturas. Por ejemplo, la celda A2, que corresponde al  concepto de materiales, el dia de ahora me llega una factura que equivale a $50 y es lo que ingreso en dicha celda y en la celda A3 (Mantenimiento) ingreso una factura por $100 . Lo que requiero es que en la celda A1 me acumule el valor de lo ingresado ($150) para que me "amarre" con la suma total de las dos facturas y así, cada vez que me llegue un bonche de facturas. Aquí estoy hablando de dos conceptos pero en la realidad llego a recibir +- 20 facturas.

Espero haber sido mas claro.

Gracias y saludos.

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.