Compartilhar via

Células com Variáveis.

Anônima
2016-12-08T14:41:36+00:00

Queria saber se existe uma maneira de fazer o seguinte:

Imaginemos uma pasta A onde existe uma função, por exemplo, na célula a3 temos =soma(a1;a2).

A partir de outra pasta B gostaria de usar a função algumas vezes, mas podendo

mudar os valores de a1 e a2 a partir de B e sem perder os resultados obtidos anteriormente.

Por exemplo, em B algo como =(A!a1=2; A!a2=3) e =A!a3 produzindo 5 como resultado.

Mas se fizesse na mesma pasta B em outras células =(A!a1=5; A!a2=5) e =A!a3 produzindo 10 como resultado, não perdesse o resultado anterior (5).

É possível fazer algo assim

Obrigado?

Microsoft 365 e Office | Excel | Para uso doméstico | Windows

Pergunta bloqueada. Essa pergunta foi migrada da Comunidade de Suporte da Microsoft. É possível votar se é útil, mas não é possível adicionar comentários ou respostas ou seguir a pergunta.

0 comentários Sem comentários

Resposta aceita pelo autor da pergunta

  1. Anônima
    2016-12-08T18:28:45+00:00

    Olá Rogério!

    Pelo que consegui compreender da sua questão, imagino que você tenha uma estrutura de cálculo montada em uma planilha, que creio ser mais complexo do que só uma soma, e precisa simular nesta estrutura de calculo vários valores, mantendo o histórico do resultado de acordo com as variáveis que alteram.

    Bom, se é isso, você não vai conseguir de maneira nativa automaticamente. Você teria que ir jogando as variáveis na estrutura de cálculo e copiar o resultado como valor na célula desejada, ou seja o resultado histórico não vai ficar vinculado a estrutura de cálculo, pois será somente valor.

    No VBA você pode construir um código que vá alimentando a planilha de cálculo com os valores desejados e traga o resultado como valor para as células. Veja um modelo simplista de código na planilha do link abaixo.

    No modelo, na planilha A tem a estrutura de soma que você postou, e na planilha B os valores que devem ser alimentadas para gerar o resultado e manter o histórico. O código que usei foi:

    Sub Calcular()

    Dim rRange As Excel.Range

    For Each rRange In Range("B2:B11")

            Excel.Range("var_1").Value = Excel.Range("B" & rRange.Row)

            Excel.Range("var_2").Value = Excel.Range("C" & rRange.Row)

            Excel.Range("D" & rRange.Row).Value = Excel.Range("Resultado_PlanA").Value

    Next rRange

    End Sub

    É necessário conhecimento em VBA para desenvolver uma solução que provavelmente te satisfaça.

    ABraços!

    LINK DO ARQUIVO: https://drive.google.com/file/d/0B4utYM3AOedCbHkyZ2NrYXZJbHM/view?usp=sharing

    Esta resposta foi útil?

    0 comentários Sem comentários

2 respostas adicionais

Classificar por: Mais útil
  1. Excluído

    Essa resposta foi excluída devido a uma violação de nosso Código de Conduta. A resposta foi denunciada manualmente ou identificada por meio da detecção automatizada antes da ação ser tomada. Consulte nosso Código de conduta para obter mais informações.


    Os comentários foram desabilitados. Saiba mais

  2. Anônima
    2016-12-08T19:33:13+00:00

    Selecione a célula A3. Pressione Ctrl+F3 para abrir o gerenciador de nomes. Dê o nome de FuncSoma e, no campo Refere-se a, escreva:

    =SOMA(!A1:A2)

    Vá numa célula qualquer (abaixo da linha 2) e escreva =FuncSoma. Nas duas células acima, entre números. Verá que seu nome definido irá fazer os cálculos.

    Esta resposta foi útil?

    0 comentários Sem comentários