Option Explicit
Sub WorkTwiceBecauseOfNotReadingCarefully()
' constants
Const ksWSFixed = "REPORT"
Const ksFixedRange = "T:W"
Const ksOtherRange = "X:AA"
' declarations
Dim rngFixed As Range, rngOther As Range
Dim I As Long, J As Integer, K As Long, L As Integer, bOk As Boolean, A As String
' start
Set rngFixed = Worksheets(ksWSFixed).Range(ksFixedRange)
' process
With rngFixed
For I = 2 To .Rows.Count
A = .Cells(I, 1).Value
If A = "" Then Exit For
bOk = False
For J = 1 To Worksheets.Count
If Worksheets(J).Name <> ksWSFixed Then
Set rngOther = Worksheets(J).Range(ksOtherRange)
For K = 2 To Worksheets(J).Rows.Count
If rngOther.Cells(K, 1).Value = "" Then Exit For
If rngOther.Cells(K, 1).Value = A Then
bOk = True
Exit For
End If
Next K
If bOk Then Exit For
Set rngOther = Nothing
End If
Next J
If bOk Then
For L = 2 To 4
.Cells(I, L).Value = rngOther.Cells(K, L).Value
Next L
End If
Next I
End With
' end
Set rngOther = Nothing
Set rngFixed = Nothing
Beep
End Sub