I may have misunderstood but looking at your code were you trying to do the below:
Sub DataConsolidation()
Dim wsc1 As Worksheet 'worksheet1 copy
Dim wsc2 As Worksheet 'worksheet2 copy
Dim wsc3 As Worksheet 'worksheet3 copy
Dim wsd As Worksheet 'worksheet destination
Dim lrow1 As Long 'last row of worksheet1 copy
Dim lrow2 As Long 'last row of worksheet2 copy
Dim crow As Long 'copy row
Dim drow As Long 'destination row
Dim trow As Long 'tmp row
Set wsc1 = Sheets("Sheet1")
Set wsc2 = Sheets("Sheet2")
Set wsc3 = Sheets("Sheet3")
Set wsd = Sheets("Consolidated data")
crow = 2: drow = 3
lrow2 = wsc2.Columns(1).Cells.Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
lrow3 = wsc3.Columns(2).Cells.Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
With wsc2
For crow = 2 To lrow2 'starts at 2 because of the header row
wsd.Cells(drow, 2).Value = .Cells(crow, 1).Value
wsd.Cells(drow, 5).Value = .Cells(crow, 7).Value
drow = drow + 1
Next crow
End With
drow = 3
trow = 3
With wsc3
For crow = 2 To lrow3 'starts at 2 because of the header row
If Sheets("Sheet3").Cells(crow, 3).Value = "GA" Then
wsd.Cells(trow, 4).Value = wsc3.Cells(trow, 5).Value
trow = trow + 1
End If
wsd.Cells(drow, 3).Value = .Cells(crow, 4).Value
drow = drow + 1
Next crow
End With
End Sub