Моя исходная таблица выглядит так

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

Вот финальный стол, который мне нужен:

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

3 ответа3

1

http://www.excel-easy.com/examples/transpose.html

Первый хит в Google для Excel 2010 транспонирования.

По сути, вы выбираете все данные, которые хотите транспонировать (включая заголовки столбцов или строк), Ctrl + C, чтобы скопировать их, щелкните правой кнопкой мыши в левой верхней ячейке, куда вы хотите вставить их, и вставьте специальную кнопку. Установите флажок транспонирования и нажмите «ОК». , и вы сделали.

1

С такими данными в Sheet1:

Запуск короткого макроса:

Sub TwoDee()
    Dim s1 As Worksheet, s2 As Worksheet
    Dim N As Long, i As Long, v1 As String, v2 As String, v3 As Long
    Dim iRow As Long, iCol As Long
    Set s1 = 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

будет производить это в Sheet2:

1

Это может быть достигнуто с помощью сводной таблицы. Выбрав одну ячейку или всю таблицу, перейдите к InsertTablesPivot Table

Затем перетащите идентификатор в область «Строки», «Продукт» в область «Столбцы» и «Сумма в область значений». Поиграйтесь с форматированием и маркировкой, пока не получите то, что хотите:

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .