2013-10-23 2 views
0

다음과 같이 ID 열 (A)과 가변 데이터 열 (B)이 있습니다.VBA를 사용하여 요약 테이블에 동시 데이터 그룹화

Start ID End ID B Value 
    1   3   0.1 
    4   4   0.2 
    5   6   0.3 
    7   7   0.2 
    8   8   0.3 

내가 엑셀 ​​VBA 상당히 새로운 오전 문제가 짧은 코드를 작성하는 데 문제 :

A B 
    1 0.1 
    2 0.1 
    3 0.1 
    4 0.2 
    5 0.3 
    6 0.3 
    7 0.2 
    8 0.3 

나는이 데이터가 요약 테이블은 다음과 같이 할 수 있도록 그룹화 VBA 코드를 생성해야 이 일을 할 수 있습니다. 필자가 포함시킨 데이터는 샘플의 처음 부분 일 뿐이며 코드는 원하는 수의 ID에 대한 요약을 생성 할 수 있어야합니다. 어떤 도움을 많이 주셔서 감사합니다, 고마워.

답변

0

이 코드는 다소 추하고 불결하게 조립이지만, 트릭 할 수 있습니다 :

(가정 :

  • 귀하의 값이 셀 B2에 시작하고 해당 ID를 A2에서 시작을
  • 요약 표 시작 시간 : E2
  • 데이터 집합의 행 수가 50 개 미만입니다
  • 당신이 필요로 6,

변경 다)

Sub CreateSummaryTable() 

    Dim cl As Range 
    Dim StartCl As Range 
    Dim TableRow As Integer 

    Set StartCl = Range("B2") 
    TableRow = 2 

    For Each cl In Range("B2:B50") 
     If cl.Value <> StartCl.Value Then 
      Range("E" & TableRow).Value = StartCl.Offset(0, -1).Value 
      Range("F" & TableRow).Value = cl.Offset(-1, -1).Value 
      Range("G" & TableRow).Value = StartCl.Value 

      Set StartCl = cl 
      TableRow = TableRow + 1 
     End If 
    Next 

    End Sub 
+0

그냥 작업 감사합니다! – user2105201

관련 문제