Como combinar o conjunto de dados para criar combinações exclusivas [duplicado]

0

Primeiro, não tenho experiência com scripts do Excel, apenas fórmulas básicas. Eu vi esta outra questão na SU, mas eu ' Não tenho certeza se é exatamente o que preciso ou como adaptá-lo às minhas necessidades.

Veja o que estou tentando:

Eu tenho uma planilha com 3 colunas e 10 linhas, cada uma delas com valores exclusivos. Por exemplo:

Column A
--------
White 
Black 
Blue 
etc (until 10 items)

Column B
--------
USA
Canada 
Mexico 
etc (until 10 items)

Column C
--------
English
French 
Spanish 
etc (until 10 items)

Portanto, no total, existem 30 elementos. Gostaria de criar uma nova tabela com essas 3 colunas e 1000 linhas , onde cada linha teria uma combinação única desses 3 elementos (portanto, 2 linhas nunca terão a mesmos 3 elementos). Apenas para esclarecimento, a ordem das colunas tem que ser a mesma (A, B, C) e, claro, os elementos de uma coluna sempre ficam nessa coluna.

Exemplos de linhas resultantes:

White | USA | English
White | USA | French
Black | USA | English
Black | Canada | English
... up to 1000 combinations

Qualquer ajuda seria apreciada!

EDITAR

O ponto desta questão é: 1. Entenda se a solução fornecida na resposta vinculada se aplica ao meu caso 2. Saiba se existem outras maneiras de resolver isso que não são scripts (fórmulas, ferramentas do Excel, etc.)

    
por Albert 14.01.2015 / 22:22

1 resposta

2

Na resposta abaixo, presumo que seus dados iniciais estejam nas células A1: C10 e não tenham cabeçalhos. A solução não usa scripts . Somente fórmulas do Excel são usadas.

  1. Insira a seguinte fórmula =MOD((ROW()-1),10)+1 na célula D1
  2. Insira =MOD(INT((ROW()-1)/10),10)+1 na célula E1
  3. Insira =MOD(INT(INT((ROW()-1)/10)/10),10)+1 na célula F1
  4. Selecione as células D1:F1 e arraste-as para a linha 1000 para preencher a área D1:F1000 com combinações exclusivas de índices.
  5. Insira =INDEX(A$1:A$10,D1) na célula G1
  6. Selecione a célula G1 e arraste-a para a direita para a célula I1
  7. Selecione as células G1:I1 e arraste-as para a linha 1000 para preencher a área G1:I1000 com combinações exclusivas de dados iniciais

Explicação:

As fórmulas nas células D1, E1 e F1 calculam o número de centésimo, décimo e um no número da linha atual (o número de linhas é ajustado em -1). Isso fornece uma matriz de índices exclusivos. A função INDEX (range, row_num) retorna o valor do intervalo dado o número da linha.

    
por 15.01.2015 / 15:51