The fact that it is a newly created column shouldn't be an issue, as long as you run that code AFTER the code that creates the new column.
Did you try using the Macro Recorder? What you can do is run the code up to the point where you need the Conditional Formatting, stop it, and then record the macro there.
You can stop your code at a certain by using Breakpoints or simply temporarily adding an
Exit Sub statement.
By the way, one thing you can do to make your code a little cleaner, is to fix it up after using the Macro Recorder. The Macro Recorder is very literal and records every single cell selection. Most of the time, you do not need to select cells to work with them. Usually, if you have one row that ends in ".Select", and the next row begins with "Selection" or "ActiveCell", those rows can usually be combined into one. Also, if you are using RC range references in your formulas, instead of using Autofill, you just assign the formula to the whole range at once.
So, your current code could be shortened to this:
Code:
Sub Macro3()
'
' Macro3 Macro
'
' Keyboard Shortcut: Ctrl+Shift+F
'
Sheets("Sheet5").Select
Columns("J:M").Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
Columns("J:M").NumberFormat = "General"
Range("J1").FormulaR1C1 = "Concatenated"
Range("K1").FormulaR1C1 = "Row Match"
Range("L1").FormulaR1C1 = "Verifier"
Range("M1").FormulaR1C1 = "True/False"
Range("J2:J1000").FormulaR1C1 = "=RC[-3]&RC[-1]"
Range("K2:K1000").FormulaR1C1 = _
"=IFERROR(MATCH(RC[-1], 'Sheet2'!R2C12:R1048576C12,0),"""")"
Range("L2:L1000").FormulaR1C1 = _
"=IFERROR(VLOOKUP(RC[-2],'Sheet2'!R2C12:R1048576C13,2,FALSE),"""")"
Range("M2:M1000").FormulaR1C1 = "=IF(AND(RC[-2]>0,RC[-1]=""SALE""),""True"", """")"
End Sub
Lastly, I see that you are populating your formulas down to row 1000. If you are just doing that because you don't know where the data will end, you can make your code figure it out dynamically, and incorporate that into your code. Here is how:
It looks like your formula in column J is looking at columns G and I. So, if we can look at column G to determine where the last row of data is, we can do this before adding any of those formulas in column J to M to find our last row:
Code:
Dim lastRow as Long
lastRow = Cells(Rows.Count,"G").End(xlUp).Row
Then, we can change our formulas accordingly to use that, like this (repeat for the others):
Code:
Range("J2:J" & lastRow).FormulaR1C1 = "=RC[-3]&RC[-1]"
See how you do with record your Conditional Formatting code, and write back here if you run into issues.