mantendo um total constante de células do excel

0

Eu tenho uma coluna com 3 células: A1, A2 e A3. Eu quero que o total numérico das 3 células permaneça constante conforme eu aumente ou diminua qualquer uma das 3 células. Ou seja, eu preciso de qualquer aumento ou diminuição de qualquer célula para ser distribuída uniformemente entre as outras duas células. Por exemplo, eu começo com 3 + 5 + 2 = 10. Eu mudo de 5 para 6, então eu tenho 2.5 + 6 + 1.5 = 10 automaticamente. Por favor, tenha em mente que na verdade eu terei cerca de 20 células que eu quero igual a uma constante 100. muito obrigado.

    
por robert mills 18.07.2015 / 20:15

1 resposta

1

Preencha A1 até A20 com valores que se somam a 100 :

Emseguida,coloqueaseguinteMacrodeEventosnaáreadecódigodaplanilha:

PrivateSubWorksheet_Change(ByValTargetAsRange)DimrngAsRange,DeltaAsDoubleSetrng=Range("A1:A20")
    If Intersect(Target, rng) Is Nothing Then Exit Sub

    Delta = (100 - Range("A21").Value) / 19
    Application.EnableEvents = False
        For Each r In rng
            If r.Address <> Target.Address Then
                r.Value = r.Value + Delta
            End If
        Next r
    Application.EnableEvents = True
End Sub

Quando a macro estiver instalada e ativa, ela detectará qualquer alteração nos valores em A1 por meio de A20 e ajustará os outros valores para preservar os 100. Altere apenas um célula de cada vez.

Por ser um código de planilha, é muito fácil de instalar e usar automaticamente:

  1. clique com o botão direito do mouse no nome da guia próximo à parte inferior da janela do Excel
  2. selecione Exibir código - isso abre uma janela do VBE
  3. cole o material e feche a janela do VBE

Se você tiver alguma dúvida, tente primeiro em uma planilha de teste.

Se você salvar a pasta de trabalho, a macro será salva com ela. Se você estiver usando uma versão do Excel posterior a 2003, deverá salvar o arquivo como .xlsm em vez de .xlsx

Para remover a macro:

  1. abrir as janelas do VBE como acima
  2. limpe o código
  3. feche a janela do VBE

Para saber mais sobre macros em geral, consulte:

link

e

link

Para saber mais sobre macros de eventos (código da planilha), consulte:

link

As macros devem estar ativadas para que isso funcione!

    
por 18.07.2015 / 21:28