2010-10-29 18:07:39 +0000 2010-10-29 18:07:39 +0000
10
10
Advertisement

Excel: Encontrar um subconjunto de números que se somam a um dado total?

Advertisement

Tenho uma coluna de números (digamos que é A1:A100) e preciso de encontrar um subconjunto deles que somem um determinado total.

Advertisement
Advertisement

Respostas (2)

25
25
25
2010-10-29 18:08:04 +0000

É possível com o add-in Solver**. Os passos seguintes funcionaram para mim no Excel 2007 e 2010.

  1. designar uma célula para guardar o resultado (C1 para este exemplo) - esta é a célula alvo, e uma coluna que o Excel pode utilizar para o trabalho de scratch (B1:B100 para este exemplo)
  2. Na célula de destino, introduza a fórmula “=SUMPRODUCT(A1:A100,B1:B100)” (sem aspas). Isto calculará a soma de A1*B1+A2*B2+…etc
  3. Seleccionar Abrir o solucionador (separador Dados, Grupo de análise)
  4. A célula alvo deve ser óbvia ($C$1 para este exemplo)
  5. Para ‘Igual a:’ seleccionar ‘Valor de:’ e introduzir o valor desejado
  6. Em ‘Mudando de Células’ introduzir “$B$1:$B$100” (sem aspas, e pode ser necessário inicializar estes valores para 0 você mesmo)
  7. Acrescentar uma restrição às células que podem ser alteradas. No menu de arrastamento, seleccionar ‘binária’ (Binário). Isto restringe os valores destas células a 0 (retirando a célula A correspondente da soma) ou 1 (adicionando a célula A correspondente à soma).
  8. Clicar em ‘Resolver’ e aguardar. Os números que fazem parte do subconjunto que procura terão um 1 na coluna B


Se o solucionador estiver a demorar muito tempo, pode ajudá-lo removendo linhas que obviamente não funcionarão (o total está em dólares, e apenas uma linha tem cêntimos não zero)


Bónus: Pode ter excel excel automaticamente destacando as células que procura adicionando a formatação condicional a essas células. Seleccione todas as células que deseja formatar e de (separador Home)>(Styles group)>> Formatação condicional>>Nova regra seleccione ‘Use a formula para determinar quais as células a formatar’. Na fórmula, introduzir ‘=$B1=1’ (sem aspas) que avaliará se a linha correspondente na coluna B é 1. Para o formato, pode acrescentar o que quiser (negrito, itálico, preenchimento verde, etc).

Outra maneira fácil de encontrar as linhas importantes é ordenar a coluna B Z->A, e todos os 1’s chegarão ao topo.


\ *O suplemento do solver pode ser instalado com estes passos

  1. Clique no botão do Microsoft Office, e depois clique em Opções do Excel.
  2. Clique em Add-Ins, e depois na caixa Gerir, seleccione Excel Add-ins.
  3. Clicar em Ir.
  4. Na caixa Add-Ins disponíveis, seleccione a caixa de verificação Solver Add-in, e depois clique em OK. (Se o Solver Add-in não estiver listado na caixa Add-Ins disponíveis, clique em Browse para localizar o add-in).
  5. Se lhe for pedido que o Solver Add-in não esteja actualmente instalado no seu computador, clique em Sim para o instalar.
2
2
2
2012-12-30 02:41:03 +0000

Existe um suplemento Excel de baixo custo SumMatch , que destacará o subconjunto de números que se somam a uma soma alvo.

Advertisement

Questões relacionadas

6
13
10
8
7
Advertisement