Would using "wkbDest.TP.Range("A1:H24").ClearContents" do the trick?

-edit- Nevermind, the problem isn't the function called, it's with how you define your objects. You need to do it like this:

Option Explicit

Sub test()
  Dim wkbDest As Workbook
  Dim TP As Worksheet
  
  Set wkbDest = Workbooks("Table Plan for Cameron.xlsm")
  Set TP = wkbDest.Worksheets("TablePlan")
  
  TP.Range("A1:H24").Clear ' This is where the error 438 happens
  
End Sub