Как я уже в Вашей прошлой теме писал, автофильтр в Excel иногда излишне умен и сам ставит диапазон. Поэтому костыль такой - вставляем пустую 32-ю строку, ставим автофильтр и удаляем 32 строку.
Кусок Вашего кода переписываем так
[vba]Код
r_ = 31
With Sheets("Общий табель")
Application.EnableEvents = 0
.Range("A" & r_ + 1).EntireRow.Insert
If .Range("C5:C" & r_).AutoFilter Then
.Range("C5:C" & r_).AutoFilter
End If
.Range("C6:C" & r_).AutoFilter Field:=1, Criteria1:="<>" , VisibleDropDown:=False
.Range("A" & r_ + 1).EntireRow.Delete
Application.EnableEvents = 1
End With
[/vba]