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