The following code works well except if the table is filtered. any ideas on how to get around that without undoing the filtering?

Sub Table_Move()

    Dim tbl As ListObject
    Dim N As String
    Dim O As String
        
    Call Clear
        
    N = "New"
    O = "Old"
    
    Set tbl = ActiveSheet.ListObjects("Table1")
    
    tbl.ListColumns(N).DataBodyRange.Copy
    tbl.ListColumns(O).DataBodyRange.PasteSpecial xlPasteValues
    

End Sub