Like so:
Option Explicit
Sub MergeTwoSheets()
Dim LR As Long
With Sheets("Sheet3")
.Cells.Clear
Sheets("Sheet1").Columns("A:A").Copy .Range("B1")
Sheets("Sheet2").Range("A2:A" & Rows.Count).SpecialCells(xlConstants) _
.Copy .Range("B" & .Rows.Count).End(xlUp).Offset(1)
.Range("B:B").AdvancedFilter Action:=xlFilterCopy, _
CopyToRange:=.Range("A1"), Unique:=True
LR = .Range("A" & Rows.Count).End(xlUp).Row
.Range("A1:A" & LR).Sort Key1:=.Range("A2"), Order1:=xlAscending, Header:=xlYes, _
sortmethod:=xlPinYin, dataoption1:=xlSortTextAsNumbers
.Range("B:B").ClearContents
.Range("B1:C1").Value = [{"SKU","List Price"}]
.Range("B2:B" & LR).FormulaR1C1 = _
"=IF(ISNUMBER(MATCH(RC1, Sheet1!C1, 0)), INDEX(Sheet1!C2, MATCH(RC1, Sheet1!C1, 0)), """")"
.Range("C2:C" & LR).FormulaR1C1 = _
"=IF(ISNUMBER(MATCH(RC1, Sheet2!C1, 0)), INDEX(Sheet2!C2, MATCH(RC1, Sheet2!C1, 0)), """")"
.Columns("B:C").Value = Columns("B:C").Value
End With
End Sub
Bookmarks