Notifications
Clear all

Combinar sequencias

24 Posts
6 Usuários
0 Reactions
2,989 Visualizações
(@mprudencio)
Posts: 2749
Famed Member
Topic starter
 

Combinação de numeros

Eu tenho um grupo de sequencias numericas

01 02 03
04 05 06
07 08 09
10 11 12

Entao o resutado esperado é uma combinação de tres em tres linhas

01 02 03 04 05 06 07 08 09
01 02 03 04 05 06 10 11 12
04 05 06 07 08 09 10 11 12

Sera que alguem consegue criar um codigo sem um exemplo?

Minhas tentativas foram em vão.

Marcelo Prudencio
Microsoft Excel Brasil no Facebook

"Começar já é a metade do caminho."
Autor Desconhecido

Simplifica que simples fica.
Nicole Tomazella.

"O Simples é Sempre Melhor Que o Complicado"
Jorge Paulo Lemann.

 
Postado : 15/08/2016 5:13 pm
(@mprudencio)
Posts: 2749
Famed Member
Topic starter
 

Alguem?

Marcelo Prudencio
Microsoft Excel Brasil no Facebook

"Começar já é a metade do caminho."
Autor Desconhecido

Simplifica que simples fica.
Nicole Tomazella.

"O Simples é Sempre Melhor Que o Complicado"
Jorge Paulo Lemann.

 
Postado : 30/08/2016 3:42 pm
brunoxro
(@brunoxro)
Posts: 698
Honorable Member
 

Alguem?

Vou adaptar um código que tenho que faz uma coisa parecida, o que tenho monta restrições para o Solver.
Até o fim de semana ta mando uma versão.

att,

 
Postado : 30/08/2016 3:47 pm
DJunqueira
(@djunqueira)
Posts: 772
Prominent Member
 

Será q a planilha anexa de alguma forma ajuda?

Se sua dúvida foi respondida marque o tópico como RESOLVIDO usando o botão com marca verde.

 
Postado : 31/08/2016 12:00 am
brunoxro
(@brunoxro)
Posts: 698
Honorable Member
 

Boa tarde MPrudencio,

Segue em anexo um arquivo que faz a combinatória.
Na planilha 'Entrada', coloque os dados nas colunas A,B,C (onde cada linha é um grupo).
A macro vai gerar as combinações na planilha 'Combinações'.

Coloque alguns números na planilha de 'Entrada' para testar.

Não sei para o que você usar, mas lembre-se que 'explosão' combinatória ocorre rapidamente, ou seja, pode demorar.

Qualquer dúvida é só perguntar.

att,

 
Postado : 31/08/2016 2:31 pm
(@mprudencio)
Posts: 2749
Famed Member
Topic starter
 

Funcionou muito bem so que tive que fazer um ajuste na planilha original e ao inves de tres valores por linha tenho 5 valores, tentei ajustar seu codigo mas nao consegui entende-lo ate por falta de tempo, bem me parece que cada loop analisa uma coluna, mas nao tenho certeza disso.

Se tiver tempo pra ajustar para cinco valores ao inves de 3 por linha eu agradeço.

Marcelo Prudencio
Microsoft Excel Brasil no Facebook

"Começar já é a metade do caminho."
Autor Desconhecido

Simplifica que simples fica.
Nicole Tomazella.

"O Simples é Sempre Melhor Que o Complicado"
Jorge Paulo Lemann.

 
Postado : 01/09/2016 4:39 pm
brunoxro
(@brunoxro)
Posts: 698
Honorable Member
 

Em anexo o código ajusta para pegar 5 grupos (linhas) ao invés de 3.

O código é similar ao anterior só tive que adicionar dois Loops para pegar os valores. Só para explicar brevemente, cada Loop representa um valor de a,b,c,d,e (inicialmente 1,2,3,4,5), monto o primeiro laço (1,2,3,4,5), depois o segundo (1,2,3,4,6)... os valores vão mudando de e para a. De qualquer forma leva um tempo para entender.

Não sei para o que você vai usar, mas com 5 valores o máximo que o código pode rodar é 43 grupos (se for 44 a combinatória supera o número de linhas da planilha), acho que dá para mudar isso, mandando os valores para outras Colunas ou adicionando uma planilha para receber mais valores. Quer eu adicione essa opção?

 
Postado : 01/09/2016 9:57 pm
(@mprudencio)
Posts: 2749
Famed Member
Topic starter
 

Obrigado novamente, mas dessa vez foi bola fora, mas o objetivo é exatamente o oposto ou seja, ao inves de o grupo final ser formado de 5 linhas de 3 valores cada um seram um grupo de 3 linhas com 5 valores cada.

Em resumo ao inves de 5 x 3 o objetivo é 3 x 5.

Marcelo Prudencio
Microsoft Excel Brasil no Facebook

"Começar já é a metade do caminho."
Autor Desconhecido

Simplifica que simples fica.
Nicole Tomazella.

"O Simples é Sempre Melhor Que o Complicado"
Jorge Paulo Lemann.

 
Postado : 02/09/2016 3:46 pm
brunoxro
(@brunoxro)
Posts: 698
Honorable Member
 

Entendi errado, veja se é isso que deseja.

 
Postado : 02/09/2016 8:31 pm
(@mprudencio)
Posts: 2749
Famed Member
Topic starter
 

Agora ficou perfeito

Obrigado novamente.

Marcelo Prudencio
Microsoft Excel Brasil no Facebook

"Começar já é a metade do caminho."
Autor Desconhecido

Simplifica que simples fica.
Nicole Tomazella.

"O Simples é Sempre Melhor Que o Complicado"
Jorge Paulo Lemann.

 
Postado : 03/09/2016 9:43 am
Página 2 / 2