Ok, so the code below works with one exception, it gives me a cell value in column J4 which I do not want. I have tried editing to get it to go to the next row but being a novice with VBA I am not 100% understanding what the middle section is doing.
The idea of the macro is that it looks for a word first, upon finding that word it moves over 4 columns to the right and inserts a Vlookup which is referencing another sheet in the workbook.
I think it is the variable part of the code I am not understanding.
Can anyone spot the error and more so explain the variables in the statment.
I added the conditional formatting myself and so understand this aspect.
I think my main lack of understanding is the object use and would really apprecaite some commenting to make it clear what is happening.
Thanks
Patrick

Sub Insert_VLOOKUP()
Dim Findfirst As Object, FindNext As Object, FindNext2 As Object
Set Findfirst = Cells.Find(What:="Cheese", LookIn:=xlValues)
If Not Findfirst Is Nothing Then
Findfirst.Select
With Range("A" & Findfirst.Row & ":F" & Findfirst.Row).Borders(xlEdgeTop)
ActiveCell.Offset(ColumnOffset:=4).Activate
ActiveCell = "=VLOOKUP(RC[-5],'Product per Call '!R3C1:R[596]C[16],16,FALSE)"
End With
Set FindNext2 = Findfirst
Do
Set FindNext = Cells.FindNext(After:=FindNext2)
If Not FindNext Is Nothing Then
With Range("A" & FindNext.Row & ":F" & FindNext.Row).Borders(xlEdgeTop)
ActiveCell.Offset(ColumnOffset:=4).Activate
ActiveCell = "=VLOOKUP(RC[-4],'Product per Call '!R3C1:R[596]C[16],16,FALSE)"
Selection.NumberFormat = "0.000"
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlGreaterEqual _
, Formula1:="0.3"
With Selection.FormatConditions(1).Font
.Bold = True
.Italic = False
.ColorIndex = 10
End With
End With
End If
Set FindNext2 = FindNext
FindNext2.Interior.ColorIndex = 0
FindNext2.Select
Loop Until FindNext.Address = Findfirst.Address
End If
End Sub