2016-10-06 3 views
1

다음 표의 서식을 지정하는 데 어려움을 겪고 있습니다. 목표는 표 1에서 표 2로 이동하는 것입니다. 아래 이미지는 대형 데이터 세트의 샘플을 나타냅니다. 표 1을 어떻게 바꾸고 표 2로 변환합니까? 고맙습니다. enter image description hereExcel 데이터 서식 지정

답변

0

데이터를 조 변경하지 않습니다 (X = -y 대각선을 따라 데이터를 넘김). 당신은 2 차원 범위를 단일 차원 범위로 변환합니다.

또한, 이것은 이미 here 대답 :

+0

나는 당신이 내 예에 그것을 보여주십시오 수, 당신의 응답을 주셔서 감사합니다. 나는 초보자이며 링크의 공식을 시도했지만 작동하지 않았습니다. –

1

내가 무엇을 당신이 원하는 것은 UNPIVOT라고 생각합니다. Excel 2013에서 실제로 네이티브이지만, 이전 버전에서는 자체 버전을 해킹해야합니다. 다음은 샘플 데이터를 기반으로 한 기본적인 예입니다. 실제 범위 위치를 수용하기 위해 사소한 조정을하면이 방법의 90 %를 얻을 수 있습니다. 행과 열

Sub Unpivot() 

    Dim headerRow, row, newRow, col As Integer 
    Dim ws1, ws2 As Worksheet 

    Set ws1 = Sheets(1) 
    Set ws2 = Sheets(2) 

    headerRow = 2 
    row = 4 
    newRow = 4 

    While ws1.Cells(row, 1).Value <> "" 
    col = 5 
    While (ws1.Cells(headerRow, col) <> "") 
     ws2.Range("A" & newRow & ":D" & newRow).Value = _ 
      ws1.Range("A" & row & ":D" & row).Value 
     ws2.Cells(newRow, 5).Value = ws1.Cells(headerRow, col).Value 
     ws2.Cells(newRow, 6).Value = ws1.Cells(row, col).Value 
     newRow = newRow + 1 
     col = col + 1 
    Wend 

    row = row + 1 
    Wend 

End Sub 

샘플 입력 :

enter image description here

샘플 출력 :

enter image description here