¿Cómo repito un cálculo hasta cruzar un umbral en Google Sheets?

¿Cómo repito un cálculo hasta cruzar un umbral en Google Sheets?

Tengo una hoja de Google que estoy usando para evaluar objetivos financieros. En esta hoja tengo 8 celdas. Las dos primeras celdas se utilizan para ingresar parámetros que utilizan las fórmulas en las otras celdas.

La primera celda es un parámetro que genera el resultado en la celda 7. La segunda celda es un umbral que quiero alcanzar. Básicamente, quiero tomar el valor de la celda 1 y aumentarlo en 1 hasta que el resultado visto en la celda 7 cruce el valor de la celda 2. Un ejemplo se ve así:

  A                        B
1 Current Total            $10000
2 Target Amount            $1000
3 Current Amount           =DIVIDE(B1, 100)
4 Result A                 =PRODUCT(B3, 0.35)
5 Result B                 =PRODUCT(B3, 0.50)
6 Result C                 =PRODUCT(B3, 0.15)
7 TOTAL                    =SUM(B4:B6)
8 Total Needed             ?

Usando el ejemplo anterior, quiero crear una fórmula que aumente el valor B1 en 1 hasta que el valor en B7 cruce el valor en B2. Quiero poner la cantidad utilizada para cruzar el umbral en la celda B8.

Preferiría repetir esta operación "entre bastidores" para que solo aparezca el resultado en la celda B8. No quiero mostrar todo el "trabajo". ¿Hay alguna manera de hacer esto en una hoja de Google? ¿Si es así, cómo?

Respuesta1

Un poco tarde, pero a quien corresponda. Total Neededmantendrá el valor

=(B1 * (B2/B3)) - B1


Preferiría hacer esto repetido.operación "entre bastidores", por lo que sólo el resultado aparece en la celda B8. No quiero mostrar todo el "trabajo". ¿Hay alguna manera de hacer esto en una hoja de Google? ¿Si es así, cómo?

Esto se puede lograr con Menú -> Extensiones -> Google Apps Script ->Agregar función personalizada. Pero de todos modos usted y cualquiera no verán nada en el cálculo porque es bastante rápido.

Variante 1 Mi sugerencia es resolver esto mediante una fórmula de cálculo que calcule la cantidad de veces necesarias para sumar 1

B3 es el 1% del Total Actual. Divida Target Amount by Current Amountpara tomar el 1% del monto objetivo. Son matemáticas simples.

B8 = B2/B3 

Multiplique el resultado por el Total actual. Esto dará cuántas veces el 1% del monto objetivo tiene en el total actual

B8 = (B2/B3) * B1

Luego, reste el total actual del resultado. Esto es necesario porque necesitamos saber cuántas veces tenemos que sumar 1, después del valor agregado del Total actual,

hasta que el resultado en la celda 7 cruce el valor en la celda 2

B8 = ((B2/B3) * B1) - B1

   A                  B
1 Current Total      10000
2 Target Amount       1000
3 Current Amount     = B1 / 100
4 Result A           = B3 * 0.35
5 Result B           = B3 * 0.50
6 Result C           = B3 * 0.15
7 TOTAL              = SUM(B4:B6)
8 Total Needed       = ((B2/B3) * B1) - B1


Si tiene un caso similar que es difícil de resolver, intente dar buenos nombres de las propiedades que tiene. Dejemos que los nombres hablen de los valores que tienen. Esto le ayudará mientras piensa en ello.

Excluya todos los valores que ya se hayan calculado.

Current Amountes el 100% del Total Actual, B3 = B1/100. Así que piense, esta celda siempre tendrá ese valor cada vez que calcule en ese caso; siempre será =B1/100.

Results A, B and Cson iguales que el monto actual. También son partes del Total actual. Result Aes el 35% del Total Actual... y así sucesivamente con los demás. Cada uno de ellos siempre tendrá el mismo valor.

TOTALsiempre será igual al Monto Actual, porque resume las partes del mismo. También es un valor codificado.

Ahora, separe las propiedades conocidas de las demás. Todos representan el mismo valor (las partes del total actual) y no es necesario pensar en su cálculo porque tienen valores codificados.

   A                        B
1 Current Total                              
2 Target Amount            __________________
3 Current Amount           = B1 / 100
4 Result A                 = B3 * 0.35
5 Result B                 = B3 * 0.50
6 Result C                 = B3 * 0.15
7 TOTAL                    = SUM(B4:B6)
8 Total Needed             __________________

Ahora, los valores que quedan por trabajar son: Total actual y Importe objetivo.



Usando el ejemplo anterior, quiero crear una fórmula queaumenta el valor B1 en 1 hasta que el valor en B7 cruce el valor en B2. Quiero poner la cantidad utilizada para cruzar el umbral en la celda B8.

Variante 2 Aumente el valor de B1 en 1, solo usted mismo, manualmente.

Pruebe con D1 en la columna C, cuando C7 = C2 el resultado completará C8; de lo contrario, tendrá que aumentar o disminuir D1:

   A                  B                 C                      D 
1 Current Total      10000             = B1+D1            --> 90000 <--
2 Target Amount      ____________      1000
3 Current Amount     = B1 / 100        = C1/100
4 Result A           = B3 * 0.35       = C3*0.35
5 Result B           = B3 * 0.50       = C3*0.5
6 Result C           = B3 * 0.15       = C3*0.15
7 TOTAL              = SUM(B4:B6)      = SUM(C4:C6)
8 Total Needed       ____________      = IF(C7=C2; D1; "Change D1")

información relacionada