Scan for combo then insert row

J

JHopper

I have a worksheet sorted by Columns D, E, and G. I am trying to create a
macro that, starting in row 3, will scan every row in Columns D, E, and G for
the following combination

Column D = Sale
Column E = Purchaser
Column G = Solution

When I find the last record of this combination (Column D/Sale), (Column
E/Purchaser), (Column G/Solution) I would like to insert a row below the last
combination. Can you help me?
 
O

OssieMac

Try the following.

Sub ScanCombinations()
Dim i As Long
Dim lngRow As Long

With Sheets("Sheet1")
lngRow = .Cells(.Rows.Count, "D") _
.End(xlUp).Row
End With

For i = lngRow To 3 Step -1
If Cells(i, "D") = "Sale" And _
Cells(i, "E") = "Purchaser" And _
Cells(i, "G") = "Solution" Then
Rows(i + 1).Insert
Exit Sub
End If
Next i

End Sub
 
O

OssieMac

My previous code will work if it is the active sheet and also I forgot to
turn off CutCopyMode which will give problems if you happen to have copied
something just before running the code.

Use the following instead.

Sub ScanCombinations()
Dim i As Long
Dim lngRow As Long

Application.CutCopyMode = False

'Replace "Sheet1" with your sheet name
With Sheets("Sheet1")
lngRow = .Cells(.Rows.Count, "D") _
.End(xlUp).Row

For i = lngRow To 3 Step -1
If .Cells(i, "D") = "Sale" And _
.Cells(i, "E") = "Purchaser" And _
.Cells(i, "G") = "Solution" Then
.Rows(i + 1).Insert
Exit Sub
End If
Next i

End With
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top