Q:

Merge duplicate cell values and their sums in Excel using VBA

I am trying to merge duplicate cell values in Excel using VBA.
Here is an example of the data:

Col1 Col2
  run   1
  run   2
  see   9
  go    5
  see   1  

I need to merge this information so that the data is as follows:

Col1 Col2
  run   3
  see   10
  go    5 

Meaning, that I need to merge the duplicate values in Column 1 and sum their corresponding values in Column 2.
I have already consulted and tried a similar situation here: How to SUM / merge similar rows in Excel using VBA? 
Where one of the recommendations was the following macro:
Sub Macro1()
Dim ColumnsCount As Integer

ColumnsCount = ActiveSheet.UsedRange.Columns.Count

ActiveSheet.UsedRange.Activate

Do While ActiveCell.Row <= ActiveSheet.UsedRange.Rows.Count
    If ActiveCell.Value = ActiveCell.Offset(1, 0).Value Then
        For i = 1 To ColumnsCount - 1
            ActiveCell.Offset(0, i).Value = ActiveCell.Offset(0, i).Value + ActiveCell.Offset(1, i).Value
        Next
        ActiveCell.Offset(1, 0).EntireRow.Delete shift:=xlShiftUp
    Else
        ActiveCell.Offset(1, 0).Select
    End If
Loop
End Sub

However, it seems to be creating an infinite loop that causes my excel to crash, without actually merging anything.
Does anyone have any suggestions as to how I can adapt this code to arrive at the merge solution that I need?

A:

The following assumes your table starts in cell A1 and columns C onwards are empty (if they are not you will lose data on the merged rows)
Sub mergeCategoryValues()
Dim lngRow As Long

With ActiveSheet

    lngRow = .Cells(.LastCell.Row, 1).End(xlUp).Row

    .Cells(1).CurrentRegion.Sort key1:=.Cells(1), header:=xlNo 'change this to xlYes if your table has header cells

    Do

        If .Cells(lngRow - 1, 1) = .Cells(lngRow, 1) Then
            .Cells(lngRow - 1, 2) = .Cells(lngRow - 1, 2) + .Cells(lngRow, 2)
            .Rows(lngRow).Delete
        End If

        lngRow = lngRow - 1

    Loop Until lngRow < 2

End With

End Sub

