This is all you need, using the builtin options in Excel (advancedfilter)

Sub M_snb()
   If Sheets.Count = 1 Then Sheets.Add , Sheets(Sheets.Count)
    
   With Sheet1
     .Columns(1).AdvancedFilter 2, , .Cells(1, 6), True
     sn = .Cells(1, 6).CurrentRegion
     .Cells(1, 6).Offset(2).Resize(UBound(sn)).ClearContents
   
     For j = 2 To UBound(sn)
        .Cells(2, 6) = sn(j, 1)
        Sheet2.UsedRange.ClearContents
        .Cells(1).CurrentRegion.AdvancedFilter 2, .Cells(1, 6).CurrentRegion, Sheet2.Cells(1)
        Sheet2.Copy
        With ActiveWorkbook
           .SaveAs "G:\OF\" & sn(j, 1), 51
           .Close -1
        End With
     Next
   
   .Cells(1, 6).CurrentRegion.ClearContents
  End With
End Sub