Excel: combinar tabelas

Excel: combinar tabelas

Tenho N tabelas com M linhas para cada tabela.

Por exemplo, tenho duas tabelas A e B com respectivamente 4 linhas e 2 linhas:

Tabela A

A1

A2

A3

A4

Tabela B

A1

A2

Quero criar uma tabela C, com linhas 4x2 e combinando todas as possibilidades de linhas:

Tabela C

A1 B1

A1 B2

A2 B1

A2 B2

A3 B1

A3 B2

A4 B1

A4 B2

Existe uma maneira de conseguir isso com o Excel e, em caso afirmativo, como? Obrigado.

Responder1

Digamos que temos duas listas como:

insira a descrição da imagem aqui

e queremos gerar todas as combinações das duas listas. Executando esta macro:

Sub generateCombinations()
    Dim nA As Long, nB As Long, K As Long, i As Long, j As Long
    Dim rc As Long
    rc = Rows.Count
    nA = Cells(rc, "A").End(xlUp).Row
    nB = Cells(rc, "B").End(xlUp).Row
    K = 1

    For i = 1 To nB
        vb = Cells(i, "B").Value
        For j = 1 To nA
            Cells(K, "C").Value = vb & " " & Cells(j, "A").Value
            K = K + 1
        Next j
    Next i
End Sub

produzirá em colunaC:

insira a descrição da imagem aqui

As macros são muito fáceis de instalar e usar:

  1. ALT-F11 abre a janela VBE
  2. ALT-I ALT-M abre um novo módulo
  3. cole o material e feche a janela do VBE

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.xlsmem vez de.xlsx

Para remover a macro:

  1. abra a janela VBE como acima
  2. limpar o código
  3. feche a janela do VBE

Para usar a macro do Excel:

  1. ALT-F8
  2. Selecione a macro
  3. Toque em EXECUTAR

Para saber mais sobre macros em geral, consulte:

http://www.mvps.org/dmcritchie/excel/getstarted.htm

e

http://msdn.microsoft.com/en-us/library/ee814735(v=office.14).aspx

As macros devem estar habilitadas para que isso funcione!

informação relacionada