MACRO modificar saldo inicial mientras saldo del movimiento sea negativo y pasar saldos a otra hoja.
Dante Amor, acabo de leer el mensaje en tu peril, te envio mi pesame por tu duelo.
Dante, tengo un archivo donde solo tengo movimientos de ingreso y salida (o viceversa) de cantidades (columna “H”), en la columna “L” están los SALDOS.
Ver imagen del movimiento y su saldo respectivo
Como vemos el primer saldo es -2 (fila 14), como esta cifra es negativa la cifra debe acumularla como SALDO INCIAL, osea (0+2).
Con este nuevo SALDO INICIAL osea 2, vemos que el siguiente saldo negativo es -4 (fila 14), por lo que el nuevo SALDO INICIAL es de (0+2+4) osea 6.
Con este nuevo SALDO INICIAL es de 6, vemos que el siguiente saldo negativo es -8 (fila 16), por lo que el nuevo SALDO INICIAL es de (0+2+4+8) osea 14.
Ahora vemos que los SALDOS desde la fila 17 hasta la fila 21 son SALDOS POSITIVOS, por lo tanto el saldo inicial NO SE MODIFICA osea queda como 14.
Recien en la fila 22, vemos que el SALDO es -56, por lo que el nuevo saldo modificado será de (0+2+4+8+56) osea 70.
Y asi sucesivamente hasta que en la columna saldo no exista ningún saldo negativo
Finalmente, por cada código el libro RESUMEN DE SALDOS, se presentara la siguiente información.
Ver imagen del resumen de saldos por codigo
Te envio el archivo a tu correo.
1 respuesta
Envíame tu archivo explicando todo con un ejemplo.
Recuerda poner tu nombre de usuario y el título de la pregunta en el asunto
Hola Dante Amor, anexo te envío el archivo, el nuevo SALDO INICIAL, que resulta de toda la sumatoria de saldos diarios negativos, debe estar en la columna "L" osea la Celda "L13" que para el primer código "T0001" es igual a "70".
En el archivo encontraras varias columnas que contienen SALDOS (O, R, T y V), que se van modificando cuando se agregan el el SALDO INICIAL los SALDOS NEGATIVOS, esas columnas enrealidad no deben existir, solo las puse para que veas como se generan los SALDOS NEGATIVOS, y veas como estas cantidades se AÑADEN al SALDO INICIAL.
Espero tu gran ayuda, saludos, JOHNMOR41
No entiendo lo que necesitas, qué es lo que quieres que calcule la macro.
Quieres que busque el último negativo en la columna L del código T00001, en tu ejemplo el último negativo es el -70, ¿ese dato es el que quieres que encuentre?
Quieres que busque el último saldo en la columna V del código T00001, en tu ejemplo, el último saldo es 100.
¿Eso es lo que quieres que haga?
Ok, lo que la macro tiene que hacer es lo siguiente, ojo este calculo de nuevo SALDO INICIAL se hace solo en la columna "L", las columnas que adicionales que he puesto solo son para que veas como aparecen los negativos que se van a añadir al nuevo SALDO INICIAL
1) el saldo incial es cero osea L13 = 0
2) el 1er saldo negativo esta en la fila 14 y su valor es "-2", por lo tanto el nuevo SALDO INICIAL es L13 = 0+2 = 2
3) revisamos de nuevo la columna de saldos y encontamos el 2do saldo negativo que esta en la fila 15 y su valor es "-4", por lo tanto el nuevo SALDO INICIAL es L13 = 0+2+4 = 6
4) revisamos de nuevo la columna de saldos y encontamos el 3er saldo negativo que esta en la fila 16 y su valor es "-8", por lo tanto el nuevo SALDO INICIAL es L13 = 0+2+4+8 = 14
5) revisamos de nuevo la columna de saldos y encontamos el 4to saldo negativo que esta en la fila 22 y su valor es "-56", por lo tanto el nuevo SALDO INICIAL es L13 = 0+2+4+8+56 = 70
6) Con este nuevo SALDO INICIAL osea 70 este articulo "T0001" termina con un valor de 100 ( que esta en la fila 100)
7) Este resultado se pasa a la pestaña RESUMEN POR CÓDIGO
8) Me acabo de dar cuenta que para quehaga la misma operación de encontrar el nuevo SALDO INICIAL para el CÓDIGO SIGUIENTE se tiene que añadir una línea donde el saldo inicial para este nuevo código es "cero"
9) Mismo proceso que el anterior para eliminar saldos negativos
NOTA te envío nuevamente el archivo donde corrijo el numero de las filas
¿Sigo sin entender qué es lo que quieres que haga?
Esto:
"2) el 1er saldo negativo esta en la fila 14 y su valor es "-2", por lo tanto el nuevo SALDO INICIAL es L13 = 0+2 = 2"
¿El -2 en la celda L14 ya existe o quieres que la macro lo calcule?
efectivamente el 1er negativo que encuentra la MACRO es -2 (que esta en la fila 14), y esta cantidad es anulado cuando se modifica el SALDO INICIAL que era "0" y a la cual la MACRO le agrega "2" quedando como nuevo SALDO INCIAL "0+2" osea "2".
Ahora con el nuevo saldo inicial, se vuelve a recalcular y aparece otro negativo que es "-4", en la fila 15. (el 2do negativo), esta cantidad se agrega al nuevo SALDO INICIAL osea L13 = 0+2+4 = 6.
Osea la MACRO cada vez que encuentre un SALDO NEGATIVO en el movimiento, lo va a agregar o añadir al SALDO INCIAL.
La Macro termina para el 1er codigo cuando en los saldos del movimiento no existe ningun negativo, para este codigo "T0001" el saldo incial es "70" que esta en la fila 13, y el saldo final es "100" que esta en la fila 23
No estás respondiendo mi duda, ya no me expliques.
Solamente dime este dato -2 que aparece en tu hoja, en la celda L14,
¿Yo lo tengo que calcular Si o No?
si dante se tiene que calcular, ya que cada vez que se modifica el saldo se tiene que volver que calcular los saldos de cada movimiento
Ah, entonces no me estás explicando bien.
No me estás diciendo cómo lo debo calcular.
Si no sé cómo calcular, no puedo llegar al saldo inicial, tampoco voy a llegar al saldo final.
Te pedí que me enviaras 2 archivos.
Ahora necesito que me expliques cómo calcular el -2.
Ya vi que existen unas fórmulas para calcular el -2 y no tiene nada que ver con todo lo que anteriormente me explicaste.
Espero el detalle de la explicación, si aún quieres que te ayude.
Dante, en el archivo que te envíe esta explicado paso a paso, para cada saldo nuevo he creado una columna donde se calcula el nuevo saldo modicado, pero solo es para que veas como aparecen los saldos negativos en el movimiento y como se calcula los nuevos saldos iniciales, pero la idea es que todo eso se haga en la columna L
Ya revisé el archivo y por eso te estoy pidiendo 2 archivos, no entiendo tus explicaciones, no estás explicando cómo obtener el -2
Tienes una fórmula en la columna L. Si la fórmula es la base para calcular los saldos, entonces explícame la fórmula, de lo contrario no tiene caso seguir.
OK recién entiendo, te voy a enviar otro archivo que va contener dos libros
1) Una petaña llamada SALDO ORIGINAL con los datos originales y con los saldos en la columna "L"
2) Y otra pestaña con SALDO MODIFICADO después de aplicar la MACRO
No te envío el archivo que contiene el paso a paso por que ese ya lo envíe
Saludos, JOHNMOR41
No tengo ni idea de lo que quieres.
Fui mu específico al preguntarte si yo calculaba el -2 y dijiste que sí, y en el archivo me pones el -2, entonces ya no te entiendo, si el -2 lo pones tu o lo calculo yo.
El archivo que me enviaste no me sirve, no vine ninguna explicación de lo que quieres que haga.
Disculpa que en esta ocasión no te pueda ayudar.
Dante, te dije que la MACRO si calculaba la columna "L" que es donde van los saldos, esta columna yo la calcule y tiene la siguiente fórmula
L14 = 1er saldo en la fila 14 = +L13+SI(+$B14="S",-$H14,$H14)
Donde:
L13 = es el saldo inicial cuyo primer valor es "0" (cero)
B14 = es la columna que indica si el movimiento es una salida = "S" o un ingreso "I"
H14 = es la cantidad que se esta moviendo, osea lo que se agrega al kardex o se retira del kardex
Por eso te dije que la MACRO lo tiene que calcular, ya que con cada negativo que la macro encuentre el SALDO INICIAL, es modificado con el mismo valor, osea, L14 = -2, y la cantidad (o valor absoluto) es añadido al SALDO INICIAL, que comenzó con L13 = 0, y ahora la MACRO convirtió el SALDO INICIAL en L13 = 0+2 = 2.
Como tenemos un nuevo "saldo inicial", la MACRO vuelve a calcular los saldos en la columna "L", encontrando un 2do "saldo negativo", que asu vez se añade al SALDO INICIAL volviéndose a obtener un NUEVOSALDO INICIAL (L13 = 0+2+4 = 6). Y así, sucesivamente hasta que la MACRO no encuentre más SALDOS NEGATIVOS.
Por favor, atiende a mi pedido, si es necesario voy a preparar un diagrama de flujo
Saludos, JOHNMOR41
No te entiendo nada.
De cuál macro hablas, ¿de una que ya existe o de la que yo voy a crear?
Si el -2 no existe, ¿por qué lo pones en la hoja?
Te pedí una hoja con los datos originales, quiere decir que si el -2 no existe, entonces no lo pongas, lo único que ocasiones es confundirme.
Tus explicaciones no son congruentes.
Según tu ejemplo tienes esto:
0+2+4+8+56 = 70
¿Pero de dónde salió ese 56?
Lo que yo veo es lo siguiente:
La suma de los movimientos tipo "S" da como resultado 568
La suma de los movimientos tipo "I" da como resultado 598
El saldo final es 30
Conclusión:
Saldo inicial = 0
Movimientos = +598 - 568
Saldo final = 30
Olvídate de todo lo que me has dicho, tus ejemplos no ayudan, tus explicaciones tampoco ayudan, si en verdad quieres que te ayude, tendrás que empezar de nuevo y responder a mis dudas tal y como quiero que me respondas.
Si no puedes responder mis dudas, entonces no puedo ayudarte, escribe nuevamente la pregunta y que otro experto te ayude.
Dante, los datos originales estan desde la columna "A" (donde va el codigo), hasta la columna "J" (donde va el "valorcosto"), las demas columnas yo las he confeccionado, ejemplo la columna de "SALDO".
aqui he preparado un flujograma con el procedimiento "Saldo inicial modificado que elimina saldos negativos del movimiento para un producto"
espero tu ayuda
No te pedí más explicaciones, te pedí que contestaras las dudas que tengo, te las vuelvo a poner:
No te entiendo nada.
De cuál macro hablas, ¿de una que ya existe o de la que yo voy a crear?
Si el -2 no existe, ¿por qué lo pones en la hoja?
Te pedí una hoja con los datos originales, quiere decir que si el -2 no existe, entonces no lo pongas, lo único que ocasiones es confundirme.
Tus explicaciones no son congruentes.
Según tu ejemplo tienes esto:
0+2+4+8+56 = 70
¿Pero de dónde salió ese 56?
Lo que yo veo es lo siguiente:
La suma de los movimientos tipo "S" da como resultado 568
La suma de los movimientos tipo "I" da como resultado 598
El saldo final es 30
Conclusión:
Saldo inicial = 0
Movimientos = +598 - 568
Saldo final = 30
Olvídate de todo lo que me has dicho, tus ejemplos no ayudan, tus explicaciones tampoco ayudan, si en verdad quieres que te ayude, tendrás que empezar de nuevo y responder a mis dudas tal y como quiero que me respondas.
Si no puedes responder mis dudas, entonces no puedo ayudarte, escribe nuevamente la pregunta y que otro experto te ayude.
OK, aquí están los datos originales, lo que quiero es una MACRO que evalúe los saldos del movimiento fila por fila y cada vez que encuentre un saldo negativo lo sume al saldo inicial. Pero como vemos los datos solo tienen movimientos de ingreso y salida por eso asumimos que el saldo inicial es igual a CERO, esta saldo inicial va ir creciendo conforme se encuentre saldos negativos en las filas que contienen los movimientos.
Aquí están los datos originales
Ahora voy a explicar porque el saldo inicial es igual a 70
de la fila 8 al 10 son salidas cuya suma es 2+4+8 = -14 (esto origina un saldo negativo que para ser eliminado tiene que ser agregado al saldo incial (0+14). Nota hasta la fila 10 el saldo es "0".
de la fila 10 al 11 tenemos ingresos por 490+8 = 498. NOTA hasta la fila 11 el saldo es igual a "498"
de la fila 13 a la 16 son salidas cuya suma es 4+100+200+250 = 554. NOTA hasta la fila 16 el saldo es -56 (-56=498-554), pero como es negativo dicha cantidad tiene que agregarse al saldo incial osea el nuevo saldo incial sera 70 ( 70=0+14+56). Con este nuevo saldo inicial, el saldo de la fila 16 es igual a CERO
En la fila 17 tenemos un ingreso de 100 unidades, y como ya no tenemos más movimientos el saldo final es igual a 100 unidades.
En resumen el código "T001" queda con un SALDO INICIAL de 70 unidades y un SALDO FINAL de 100unidades
El SALDO INICIAL lo calculo la MACRO que quiero que tu crees
Espero tu ayuda, gracias, JOHNMOR41
- Compartir respuesta