В этой статье мы создадим макрос для группировки данных от имени определенных условий.

Необработанные данные состоят из данных группы развития бизнеса. Он состоит из имени, номера телефона и продаж за звонок.

ArrowRawData

В этой статье мы хотим сгруппировать данные по имени агента и общей прибыли, полученной каждым агентом.

ArrowOutput

Логическое объяснение

Мы создали макрос «DataGrouping», который выполняет необходимый расчет и группировку данных. Он дает уникальное имя агента и общий доход, полученный каждым агентом.

Объяснение кода

LngLastRow = Cells (Rows.Count, 1) .End (xlUp) .Row Приведенный выше код используется для получения номера строки последней ячейки.

Пока не ячейки (i, 1) .Value = «»

Wend Приведенный выше код используется для цикла до тех пор, пока не будет обнаружена пустая ячейка.

For LngRow = LngLastRow To (i + 1) Step -1 Next 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]