分组在Excel中使用VBA数据||||| [.underline] ##在本文中,我们将代表的某些条件下创建宏以组数据。
在本文中,我们将创建一个宏来代表某些条件对数据进行分组。
原始数据由业务开发团队数据组成。它由姓名,电话号码和每个呼叫的销售额组成。
在本文中,我们想按业务代表姓名和每个业务代表产生的总收入对数据进行分组。
逻辑解释
我们创建了“ DataGrouping”宏,该宏执行所需的计算并将数据分组。它提供了唯一的代理商名称以及每个代理商产生的总收入。
代码说明
LngLastRow = Cells(Rows.Count,1).End(xlUp).Row上面的代码用于获取最后一个单元格的行号。
While Not Cells(i,1).Value =“”
Wend上面的代码用于循环直到遇到空白单元格。
For LngRow = LngLastRow To(i + 1)步骤-1下一个LngRow上面的For循环用于反向循环,从最后一行开始指定第一行。
Rng.Offset(0,2).Value = Rng.Offset(0,2).Value + Cells(LngRow,3).Value上面的代码用于根据指定的标准对值进行求和。
Rows(LngRow).Delete上面的代码用于删除行。
请遵循以下代码
Option Explicit Sub DataGrouping() 'Declaring variables Dim Rng As Range Dim LngRow As Long, LngLastRow, i As Long Application.ScreenUpdating = False 'Getting row number of last cell LngLastRow = Cells(Rows.Count, 1).End(xlUp).Row 'Initializing the first row i = 12 'Looping until blank cell is encountered in first column While Not Cells(i, 1).Value = "" 'Initializing range object Set Rng = Cells(i, 1) 'Looping from last row to specified first row For LngRow = LngLastRow To (i + 1) Step -1 'Checking whether value in the cell is equal to specified cell If Cells(LngRow, 1).Value = Rng.Value Then Rng.Offset(0, 2).Value = Rng.Offset(0, 2).Value + Cells(LngRow, 3).Value Rows(LngRow).Delete End If Next LngRow i = i + 1 Wend Application.ScreenUpdating = True End Sub
如果您喜欢此博客,请在Facebook和Facebook上与您的朋友分享。
我们很希望收到您的来信,请让我们知道我们如何才能改善我们的工作并使您的工作更好。写信给我们[email protected]