Como repito um cálculo até ultrapassar um limite no Planilhas Google

Como repito um cálculo até ultrapassar um limite no Planilhas Google

Tenho uma Planilha Google que estou usando para avaliar metas financeiras. Nesta planilha, tenho 8 células. As duas primeiras células são usadas para inserir parâmetros usados ​​pelas fórmulas nas outras células.

A primeira célula é um parâmetro que gera o resultado na célula 7. A segunda célula é um limite que desejo atingir. Basicamente, quero pegar o valor da célula 1 e aumentá-lo em 1 até que o resultado visto na célula 7 cruze o valor da célula 2. Um exemplo é assim:

  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 o exemplo acima, quero criar uma fórmula que aumente o valor B1 em 1 até que o valor em B7 cruze o valor em B2. Quero colocar o valor usado para ultrapassar o limite na célula B8.

Eu preferiria repetir esta operação "nos bastidores" para que apenas o resultado apareça na célula B8. Não quero mostrar todo o “trabalho”. Existe uma maneira de fazer isso em uma planilha do Google? Se sim, como?

Responder1

Um pouco tarde, mas a quem possa interessar. Total Neededmanterá o valor

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


Eu preferiria fazer isso repetindooperação "nos bastidores", então apenas o resultado aparece na célula B8. Não quero mostrar todo o “trabalho”. Existe uma maneira de fazer isso em uma planilha do Google? Se sim, como?

Isso é possível com Menu -> Extensões -> Script do Google Apps ->Adicionar função personalizada. Mas de qualquer forma, você e qualquer pessoa não verão nada do cálculo porque é bastante rápido.

Variante 1 Minha sugestão é resolver isso através de uma fórmula de cálculo que calcula a quantidade de vezes necessária para somar 1

B3 é 1% do Total Atual. Divida Target Amount by Current Amountpara obter 1% do valor alvo. É matemática simples.

B8 = B2/B3 

Multiplique o resultado pelo Total Atual. Isso dará quantas vezes 1% do valor alvo tem no total atual

B8 = (B2/B3) * B1

A seguir, subtraia o Total Atual do resultado. Isso é necessário porque precisamos saber quantas vezes temos que adicionar 1, após o valor adicionado do Total Atual,

até que o resultado na célula 7 cruze o valor na célula 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


Se você tiver um caso semelhante que seja difícil de resolver - tente dar bons nomes às propriedades que ele possui. Deixe os nomes falarem sobre os valores que possuem. Isso ajudará enquanto você pensa sobre isso.

Exclua todos os valores que já foram calculados.

Current Amounté 100% do total atual, B3 = B1/100. Então pense bem, essa célula sempre manterá esse valor sempre que você calcular nesse caso - sempre será =B1/100.

Results A, B and Csão iguais ao Valor Atual. Eles também fazem parte do Current Total. Result Aé 35% do Total Atual... e assim por diante os demais. Cada um deles terá sempre o mesmo valor.

TOTALserá sempre igual ao Valor Atual, pois resume suas partes. É um valor codificado também.

Agora, separe as propriedades conhecidas das demais. Todos eles representam o mesmo valor - as partes do Total Atual - e você não precisa pensar em seus cálculos, porque eles possuem 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             __________________

Agora, os valores que faltam trabalhar são - Total Atual e Valor Alvo.



Usando o exemplo acima, quero criar uma fórmula queaumenta o valor B1 em 1 até que o valor em B7 cruze o valor em B2. Quero colocar o valor usado para ultrapassar o limite na célula B8.

Variante 2 Aumente o valor de B1 em 1, sozinho, manualmente.

Teste com D1 na coluna C, quando C7=C2 o resultado irá preencher C8, caso contrário você terá que aumentar ou diminuir 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")

informação relacionada