Ok, this is the last thing I can think of to speed it up. We can get rid of the second loop completely and use AutoFill instead. Assuming Column Z on Class 2 is not used.

Option Explicit
  
 Sub macro1()
Dim i               As Long
     Dim j               As Long
     Dim Texto           As String
     Dim LastRow         As Long
     Dim SearchRange     As Range
     Dim Cel             As Range
     Dim FirstAddress    As String
     Dim RngOK           As Range
     Dim RngAbove        As Range
     Dim RngUnder        As Range
     Dim RngTemp         As Range
     Dim n               As Long
Application.ScreenUpdating = False
     Application.EnableEvents = False
LastRow = Range("K65536").End(xlUp).Row
     n = Sheets("Class 2").Range("A65536").End(xlUp).Row
     Set SearchRange = Sheets("Class 2").Range("Z2:Z" & n)
Sheets("Class 2").Range("Z2").Value = Sheets("Class 2").Range("A2").Value & _
     Sheets("Class 2").Range("B2").Value
Sheets("Class 2").Range("Z2").AutoFill Destination:= _
     Sheets("Class 2").Range("Z2:Z" & n), Type:=xlDefault
'This needs to be an unused cell.
     Set RngTemp = Range("Z1")
     Set RngOK = RngTemp
     Set RngAbove = RngTemp
     Set RngUnder = RngTemp
     For i = 1 To LastRow
         Select Case Range("K" & i).Value
         Case Is = 0
             Set RngOK = Union(RngOK, Range("L" & i))
         Case Is < 0
             Set RngUnder = Union(RngUnder, Range("L" & i))
         Case Else
             Texto = Range("B" & i).Text & Range("D" & i).Text
             With SearchRange
                 Set Cel = .Find(What:=Texto, LookIn:=xlValues, _
                 LookAt:=xlWhole, MatchCase:=True)
                 If Not Cel Is Nothing And Sheets("Class 2").Range("D" & Cel.Row) = 0 Then
                     Set RngAbove = Union(RngAbove, Range("L" & i))
                 End If
             End With
         End Select
     Next i
RngOK.Value = "Ok"
 RngUnder.Value = "Under"
 RngAbove.Value = "Above"
 RngTemp.ClearContents
 SearchRange.ClearContents
Set RngOK = Nothing
 Set RngUnder = Nothing
 Set RngAbove = Nothing
 Set RngTemp = Nothing
 Set SearchRange = Nothing
 Set Cel = Nothing
Application.ScreenUpdating = True
 Application.EnableEvents = True
End Sub