I did take the route of using a filter. Thanks. However I still have one problem. Column F Can contain multiple values. The value determines what sheet they go to. I put in code to account for all possible values for column F. My problem occurs when one of the values is not in column F (which is possible). If a value is not there is will list all the values on the next sheet. Please let me know if I need to go into more detail. Here is the code I used.
Sub Test()
Dim Sh1 As Worksheet
Dim Rng As Range
Dim Sh2 As Worksheet
Dim Rng2 As Range
Dim Rng3 As Range
Set Rng2 = Range("f2:f600").Find(What:="IC", LookAt:=xlWhole, LookIn:=xlValues)
If Not Rng2 Is Nothing Then
Set Sh1 = Worksheets("Sheet1")
Set Rng = Sh1.Range("A1").CurrentRegion
Set Sh2 = Worksheets("Sheet2")
Set Sh3 = Worksheets("Sheet3")
Set Sh4 = Worksheets("Sheet4")
Set Sh5 = Worksheets("Sheet5")
Set Sh6 = Worksheets("Sheet6")
Rng.AutoFilter Field:=6, Criteria1:="IC"
Set Rng = Rng.Offset(1, 0).Resize(Rng.Rows.Count - 1)
Set Rng = Rng.SpecialCells(xlCellTypeVisible)
Rng.Areas(1).Copy Sh2.Range("A" & Sh2.UsedRange.Rows.Count + 1)
End If
Rng.AutoFilter
Set Rng2 = Range("f2:f600").Find(What:="NRIC", LookAt:=xlWhole, LookIn:=xlValues)
If Not Rng2 Is Nothing Then
Set Sh1 = Worksheets("Sheet1")
Set Rng = Sh1.Range("A1").CurrentRegion
Set Sh2 = Worksheets("Sheet2")
Rng.AutoFilter Field:=6, Criteria1:="NRIC"
Set Rng = Rng.Offset(1, 0).Resize(Rng.Rows.Count - 1)
Set Rng = Rng.SpecialCells(xlCellTypeVisible)
Rng.Areas(1).Copy Sh2.Range("A" & Sh2.UsedRange.Rows.Count + 1)
End If
Rng.AutoFilter
Set Rng2 = Range("f2:f600").Find(What:="FNDD", LookAt:=xlWhole, LookIn:=xlValues)
If Not Rng2 Is Nothing Then
Set Sh1 = Worksheets("Sheet1")
Set Rng = Sh1.Range("A1").CurrentRegion
Set Sh3 = Worksheets("Sheet3")
Rng.AutoFilter Field:=6, Criteria1:="FNDD"
Set Rng = Rng.Offset(1, 0).Resize(Rng.Rows.Count - 1)
Set Rng = Rng.SpecialCells(xlCellTypeVisible)
Rng.Areas(1).Copy Sh3.Range("A" & Sh3.UsedRange.Rows.Count + 1)
End If
Rng.AutoFilter
Set Rng2 = Range("f2:f600").Find(What:="WBCD", LookAt:=xlWhole, LookIn:=xlValues)
If Not Rng2 Is Nothing Then
Set Sh1 = Worksheets("Sheet1")
Set Rng = Sh1.Range("A1").CurrentRegion
Set Sh3 = Worksheets("Sheet3")
Rng.AutoFilter Field:=6, Criteria1:="WBCD"
Set Rng = Rng.Offset(1, 0).Resize(Rng.Rows.Count - 1)
Set Rng = Rng.SpecialCells(xlCellTypeVisible)
Rng.Areas(1).Copy Sh3.Range("A" & Sh3.UsedRange.Rows.Count + 1)
End If
Rng.AutoFilter
Set Rng2 = Range("f2:f600").Find(What:="RESC", LookAt:=xlWhole, LookIn:=xlValues)
If Not Rng2 Is Nothing Then
Set Sh1 = Worksheets("Sheet1")
Set Rng = Sh1.Range("A1").CurrentRegion
Set Sh3 = Worksheets("Sheet3")
Rng.AutoFilter Field:=6, Criteria1:="RESC"
Set Rng = Rng.Offset(1, 0).Resize(Rng.Rows.Count - 1)
Set Rng = Rng.SpecialCells(xlCellTypeVisible)
Rng.Areas(1).Copy Sh3.Range("A" & Sh3.UsedRange.Rows.Count + 1)
End If
Rng.AutoFilter
Set Rng2 = Range("f2:f600").Find(What:="PCP", LookAt:=xlWhole, LookIn:=xlValues)
If Not Rng2 Is Nothing Then
Set Sh1 = Worksheets("Sheet1")
Set Rng = Sh1.Range("A1").CurrentRegion
Set Sh4 = Worksheets("Sheet4")
Rng.AutoFilter Field:=6, Criteria1:="PCP"
Set Rng = Rng.Offset(1, 0).Resize(Rng.Rows.Count - 1)
Set Rng = Rng.SpecialCells(xlCellTypeVisible)
Rng.Areas(1).Copy Sh4.Range("A" & Sh4.UsedRange.Rows.Count + 1)
End If
Rng.AutoFilter
Set Rng2 = Range("f2:f600").Find(What:="SHIP", LookAt:=xlWhole, LookIn:=xlValues)
If Not Rng2 Is Nothing Then
Set Sh1 = Worksheets("Sheet1")
Set Rng = Sh1.Range("A1").CurrentRegion
Set Sh5 = Worksheets("Sheet5")
Rng.AutoFilter Field:=6, Criteria1:="SHIP"
Set Rng = Rng.Offset(1, 0).Resize(Rng.Rows.Count - 1)
Set Rng = Rng.SpecialCells(xlCellTypeVisible)
Rng.Areas(1).Copy Sh5.Range("A" & Sh5.UsedRange.Rows.Count + 1)
End If
Rng.AutoFilter
Set Rng2 = Range("f2:f600").Find(What:="NASP", LookAt:=xlWhole, LookIn:=xlValues)
If Not Rng2 Is Nothing Then
Set Sh1 = Worksheets("Sheet1")
Set Rng = Sh1.Range("A1").CurrentRegion
Set Sh5 = Worksheets("Sheet5")
Rng.AutoFilter Field:=6, Criteria1:="NASP"
Set Rng = Rng.Offset(1, 0).Resize(Rng.Rows.Count - 1)
Set Rng = Rng.SpecialCells(xlCellTypeVisible)
Rng.Areas(1).Copy Sh5.Range("A" & Sh5.UsedRange.Rows.Count + 1)
End If
Rng.AutoFilter
Set Rng2 = Range("f2:f600").Find(What:="NPRB", LookAt:=xlWhole, LookIn:=xlValues)
If Not Rng2 Is Nothing Then
Set Sh1 = Worksheets("Sheet1")
Set Rng = Sh1.Range("A1").CurrentRegion
Set Sh5 = Worksheets("Sheet5")
Rng.AutoFilter Field:=6, Criteria1:="NPRB"
Set Rng = Rng.Offset(1, 0).Resize(Rng.Rows.Count - 1)
Set Rng = Rng.SpecialCells(xlCellTypeVisible)
Rng.Areas(1).Copy Sh5.Range("A" & Sh5.UsedRange.Rows.Count + 1)
End If
Rng.AutoFilter
Set Rng2 = Range("f2:f600").Find(What:="NASR", LookAt:=xlWhole, LookIn:=xlValues)
If Not Rng2 Is Nothing Then
Set Sh1 = Worksheets("Sheet1")
Set Rng = Sh1.Range("A1").CurrentRegion
Set Sh5 = Worksheets("Sheet5")
Rng.AutoFilter Field:=6, Criteria1:="NASR"
Set Rng = Rng.Offset(1, 0).Resize(Rng.Rows.Count - 1)
Set Rng = Rng.SpecialCells(xlCellTypeVisible)
Rng.Areas(1).Copy Sh5.Range("A" & Sh5.UsedRange.Rows.Count + 1)
End If
Rng.AutoFilter
End Sub