Несколько ошибок в вашем коде:
Основы IF:
Вам нужно написать
If *Condition* Then
*Do smth*
Else
*Do Smth*
End If
Вы можете взятьВ противном случае, если вы ничего не делаете.
Сумма в фильтре:
Как измученный папа написал в своем комментарии: Условие должно быть записано так:
Application.worksheetfunction.sum("I:I") = Application.worksheetfunction.sum("J:J")
Не используйте Select:
Использование select делает ваш код медленным и трудным для чтения.Первое, что нужно оптимизировать, это избегать использования select.В этой ссылке вы найдете отличный ответ, чтобы избежать использования Select: Как избежать использования Select в Excel VBA
Наконец, ваш код должен выглядеть примерно так:
Sub Macro1()
ActiveSheet.Range("A1").AutoFilter field:=9, Criteria1:="<>"
ActiveSheet.Range("A1").AutoFilter field:=10, Criteria1:="<>"
'IF Formula
IF Application.worksheetfunction.sum(Range("I:I").SpecialCells(xlCellTypeVisible)) = _
Application.worksheetfunction.sum(Range("J:J").SpecialCells(xlCellTypeVisible)) Then
Columns("J:J").Delete Shift:=xlToLeft 'instead of .Select and Selection.
End If
'If Formula ends
End Sub