Try this

I like to use variable names to help me keep the logic straight in my head

Note that if you could search for "Date" you wouldn't need the 4X's marker

edit -- for some weird formatting reason, the rng X X X X variable shows as *'s

Option Explicit
Sub test2()
    Dim rngS As Range
    Dim rngD As Range
    Dim rng***X As Range
    Dim rngTopLeft As Range, rngTopRight As Range, rngBottomRight As Range
    
    
    Set rng***X = Sheets("Temp").Range("A:A").Find("***x", lookat:=xlWhole)
    If rng***X Is Nothing Then
        MsgBox "Table Start Point Not Found", 0, "Check Error"
        Exit Sub
    End If
        
    Set rngTopLeft = rng***X.Offset(0, 1)       '="Date"
    Set rngTopRight = Sheets("Temp").Cells(rngTopLeft.Row, Sheets("Temp").Columns.Count).End(xlToLeft)  '="Name"
    Set rngBottomRight = rngTopRight.End(xlDown)
        
    Set rngS = Range(rngTopLeft.Offset(1, 0), rngBottomRight)
    Set rngD = Sheets("Complete").Range("B" & Rows.Count).End(xlUp).Offset(1)
    
    rngS.Copy
    rngD.PasteSpecial xlPasteValues
    Application.CutCopyMode = False
     
End Sub