Como criar várias linhas combinando conjuntos de dados

1

Eu tenho três tabelas e preciso de uma saída que tenha dados de duas tabelas, gostaria de criar o mesmo usando macro.

Tabela A

A
B
C
D

Tabela B

Apple
Orange
Pears

Tabela C

Americas
Asia
Europe

A saída de que preciso é

A Apple Americas
A Apple Asia
A Apple Europe
A Orange Americas
A Orange Asia
A Orange Europe

Então eu acho que para cada letra da Tabela A, haveria 12 linhas adicionais criadas. O acima é os dados da amostra e eu tenho cerca de 5000 linhas na Tabela A.

    
por user3197779 15.01.2014 / 12:54

1 resposta

1

Isso fará isso, apenas modifique conforme apropriado

Sub Umesh()
Application.ScreenUpdating = False
Dim i As Integer
Dim c As Range
Dim d As Range
Dim e As Range

i = 1

For Each c In Worksheets("Sheet1").Range("A:A")
If c <> "" Then

    For Each d In Worksheets("Sheet2").Range("A:A")
    If d <> "" Then

        For Each e In Worksheets("sheet3").Range("A:A")
            If e <> "" Then

            Worksheets("sheet4").Cells(i, 1) = c.Value
            Worksheets("sheet4").Cells(i, 2) = d.Value
            Worksheets("Sheet4").Cells(i, 3) = e.Value
            i = i + 1

            End If
        Next e

    End If
    Next d

End If
Next c

Application.ScreenUpdating = True
End Sub
    
por 15.01.2014 / 13:25