Try this:
Sub Remove_Blanks()
Dim ws As Worksheet: Set ws = Sheets("SMOE-FRONT")
Dim collValues As Collection
Dim rCell As Range
Dim i As Integer, icolumn As Integer
Application.ScreenUpdating = False
For icolumn = 3 To 8
If Application.WorksheetFunction.CountA(ws.Range(ws.Cells(23, icolumn), ws.Cells(52, icolumn))) > 1 Then
Set collValues = New Collection
For Each rCell In ws.Range(ws.Cells(23, icolumn), ws.Cells(52, icolumn)).SpecialCells(xlCellTypeConstants)
collValues.Add rCell.Value
Next rCell
ws.Range(ws.Cells(23, icolumn), ws.Cells(52, icolumn)).ClearContents
For i = 1 To collValues.Count
ws.Cells(53, icolumn).End(xlUp).Offset(1, 0).Value = collValues.Item(i)
Next i
Set collValues = Nothing
End If
Next icolumn
Application.ScreenUpdating = True
End Sub
Bookmarks