Hi all,
I've done some programming in Python and R but this is my first foray into VBA so my apologies if any of this turns out to be an absurdly stupid question!
I'm trying to write some VBA code which will do the following two tasks.
1: Sorts a range of data by Name and then by Absolute Value
2: Looks through the sorted data, and if two rows have the same Name and Values which sum to zero, deletes both rows.
As it stands, the code I've written works some of the time, but not all of the time. I've attached a spreadsheet with examples of where it works and where it fails. The code behaves as expected for "Anna" and "Tom" but fails for Jack. It should delete both entries as the names are the same and the values are the same.
Any advice would be greatly appreciated.
The code is as follows (a text box is assigned to the first piece of code (Sort_And_Match):
![]()
Sub Sort_And_Match() Application.ScreenUpdating = False counter = 0 SortMultipleColumns Matching If counter = 1 Then SortMultipleColumns Matching End If Application.ScreenUpdating = True End Sub![]()
Sub Matching() Application.ScreenUpdating = False Numrows = Range("A1", Range("A1").End(xlDown)).Rows.Count Set Rng = Range("A2:A" & Numrows) For Each Cell In Rng RowNumber = Cell.Row RowNumberPlus = RowNumber + 1 If Range("B" & RowNumber) = -Range("B" & RowNumberPlus) Then If Range("A" & RowNumber) = Range("A" & RowNumberPlus) Then Range("A" & RowNumber).Resize(2).EntireRow.Delete counter = 1 End If End If Next Cell End Sub![]()
Sub SortMultipleColumns() Numrows = Range("A1", Range("A1").End(xlDown)).Rows.Count Set Rng = Range("A2:B" & Numrows) Columns("C").EntireColumn.Insert For Each Cell In Rng RowNumber = Cell.Row Range("C" & RowNumber).Value = Abs(Range("B" & RowNumber)) Next Cell With ActiveSheet.Sort .SortFields.Clear .SortFields.Add Key:=Range("A1"), Order:=xlAscending .SortFields.Add Key:=Range("C1"), Order:=xlAscending .SetRange Range("A1:C" & Numrows) .Header = xlYes .Apply Range("C" & RowNumber).EntireColumn.Delete End With End Sub











LinkBack URL
About LinkBacks
Register To Reply

Bookmarks