现有数据
1 17
1 2
1 4
1 17
1 1
1 2
2 17
2 2
2 3
2 17
2 1
2 17
2 1
2 2
2 3
3 17
3 1
3 2
3 17
3 1
3 2
想处理成下面的数据
1 17 1
1 2
1 4
1 17 2
1 1
1 2
2 17 1
2 2
2 3
2 17 2
2 1
2 17 3
2 1
2 2
2 3
3 17 1
3 1
3 2
3 17 2
3 1
3 2
也就是先根据第一列,如果相等的话,并且第二列是17,第三列就从一开始增加

解决方案 »

  1.   


    Private Sub CommandButton1_Click()
        
        Dim lngRows As Long
        Dim lngI As Long
        Dim lngJ As Long
        Dim strTemp As String
        Dim lngIndex As Long
        
        lngRows = Sheet1.UsedRange.Rows.Count
        
        For lngI = 1 To lngRows
            Cells(lngI, 3) = ""
        Next
        
        For lngI = 1 To lngRows
            If Cells(lngI, 2) = "17" And Cells(lngI, 3) = "" Then
                lngIndex = 1
                strTemp = Cells(lngI, 1) & Cells(lngI, 2)
                For lngJ = lngI To lngRows
                    If Cells(lngJ, 1) & Cells(lngJ, 2) = strTemp Then
                        Cells(lngJ, 3) = lngIndex
                        lngIndex = lngIndex + 1
                    End If
                Next
            End If
        Next
        
    End Sub