title: Excel VBA - How to select the whole table of borders
body: <p>i am very new to Excel VB. I am hoping you can assist with my problem. </p>
  
  <p>I have several tables like this
  <a href="https://i.stack.imgur.com/ku1sO.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/ku1sO.png" alt="this"></a></p>
  
  <p>The tables can be edited such as by inserting new rows, etc by the user.</p>
  
  <p>I want to highlight and copy the latest table (the one at the very last row) and paste it at the next available space, 3 rows down. 
  I managed to do this, but I can only highlight and copy the cells with data. So should there be an empty row in the middle of the table, or an empty last row with borders, it would not copy correctly, as shown here:</p>
  
  <p><a href="https://i.stack.imgur.com/yQa4B.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/yQa4B.png" alt="here"></a></p>
  
  <p>I do still need to copy everything within the borders including empty rows, but I lack the skills and knowledge to do so. I hope you can assist.</p>
  
  <p>The following is my code:</p>
  
  <pre><code>Sub CopyPaste()
      LastRow = Cells.Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
      FirstColumn = Cells.Find("*", SearchOrder:=xlByRows, SearchDirection:=xlNext).Column
      LastColumn = Cells.Find("*", SearchOrder:=xlByColumns, SearchDirection:=xlPrevious).Column
      BelowLastName = Cells.Find("", After:=Cells(LastRow, FirstColumn), SearchOrder:=xlByColumns, SearchDirection:=xlPrevious).Row
  
  
      Cells(BelowLastName, FirstColumn).Select 'This selects C5 (refer image)
      Selection.Offset(-1).Select 'This selects C4 (refer image)
      Range(Selection, Cells(LastRow, LastColumn)).Select 'This highlights whole table
      Selection.Copy
  
      Cells(LastRow, FirstColumn).Select
      ActiveCell.Offset(3).Select
      ActiveSheet.Paste
      Application.CutCopyMode = False
  End Sub
  </code></pre>