Precisa de ajuda para criar macro em linhas do Excel para colunas

0

Eu tenho um dump de dados no Excel que consiste em dados de customer_id com vários equipamentos listados em relação ao mesmo cliente.

Os dados são assim:

customer_id    equipment 
1               xx
1               yy
1               zz
2               xx
2               yy
2               zz
2               xx

Eu quero dados em uma planilha onde há uma linha por customer_id customer_id equipment_1 # _equipment_1 equipment_2 # _equipment_2

    
por Cobus 05.04.2013 / 18:38

2 respostas

1

O que você está tentando fazer é chamado de tabulação cruzada na linguagem do banco de dados ou em uma tabela dinâmica em planilhas. Use a tabela dinâmica no Excel. Você precisará consultar a ajuda do Excel para criá-lo, as instruções estão além do escopo deste post.

    
por 05.04.2013 / 19:40
0

Sugiro criar uma Tabela Dinâmica com RecordMacro - resultados para mim conforme abaixo:

Sub Macro1()
        Columns("A:B").Select
        ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
            "Sheet1!R1C1:R1048576C2", Version:=xlPivotTableVersion12).CreatePivotTable _
            TableDestination:="Sheet1!R1C4", TableName:="PivotTable2", DefaultVersion _
            :=xlPivotTableVersion12
        Sheets("Sheet1").Select
        Cells(1, 4).Select
        ActiveWorkbook.ShowPivotTableFieldList = True
        With ActiveSheet.PivotTables("PivotTable2").PivotFields("equipment")
            .Orientation = xlColumnField
            .Position = 1
        End With
        With ActiveSheet.PivotTables("PivotTable2").PivotFields("customer_id")
            .Orientation = xlRowField
            .Position = 1
        End With
        ActiveSheet.PivotTables("PivotTable2").AddDataField ActiveSheet.PivotTables( _
            "PivotTable2").PivotFields("equipment"), "Count of equipment", xlCount
    End Sub
    
por 05.04.2013 / 19:35