como transpor grupos de linhas para colunas

0

Minha tabela de fontes é semelhante a esta

ID   Product   Amount
22   product1  $10
22   product2  $20
22   product3  $30
33   product2  $4
33   product3  $5
44   product1  $78
44   product4  $90

Aqui está a mesa final de que preciso:

ID  product1 product2 product3 product4
22       $10      $20      $30     
33                 $4       $5
44       $78                        $90
    
por hhalpin 10.09.2016 / 01:08

3 respostas

1

link

Primeiro hit no Google para o Excel 2010 transpose.

Basicamente, você seleciona todos os dados que deseja transpor (incluindo quaisquer cabeçalhos de colunas ou linhas) Ctrl + C para copiá-los, clique com o botão direito na célula superior esquerda onde deseja colá-los e cole os especiais Verifique a caixa de transposição e pressione OK e pronto.

    
por 10.09.2016 / 01:17
1

Com dados como este em Folha1 :

Execuçãodemacrocurta:

SubTwoDee()Dims1AsWorksheet,s2AsWorksheetDimNAsLong,iAsLong,v1AsString,v2AsString,v3AsLongDimiRowAsLong,iColAsLongSets1=Sheets("Sheet1")
    Set s2 = Sheets("Sheet2")
    s2.Cells.Clear

    N = s1.Cells(Rows.Count, "A").End(xlUp).Row
    s1.Range("A2:B" & N).Copy s2.Range("A2")
    s2.Range("A:A").RemoveDuplicates Columns:=1, Header:=xlNo
    s2.Range("B:B").RemoveDuplicates Columns:=1, Header:=xlNo
    s2.Range("B2:B" & N).Copy
    s2.Range("B1").PasteSpecial Transpose:=True
    s2.Range("B2:B" & N).Clear

    For i = 2 To N
        v1 = s1.Cells(i, 1).Value
        v2 = s1.Cells(i, 2).Value
        v3 = s1.Cells(i, 3).Value
        iRow = s2.Range("A:A").Find(What:=v1, After:=s2.Range("A1")).Row
        iCol = s2.Range("1:1").Find(What:=v2, After:=s2.Range("A1")).Column
        s2.Cells(iRow, iCol) = v3
    Next i
End Sub

produzirá isso em Folha2 :

    
por 10.09.2016 / 15:28
1

Isso pode ser feito usando uma Tabela Dinâmica. Com uma única célula ou a tabela inteira selecionada, navegue até InsertTablesPivot Table

Em seguida, arraste ID para a área Linhas, Produto para a área Colunas e Quantidade para a área Valores. Brinque com a formatação e rotulagem até conseguir o que deseja:

    
por 10.09.2016 / 21:19