title: Creating and naming a table in xlwings
body: <p>I am trying to use <code>xlwings</code> to interface Excel from some of my Python code and unfortunately only found stackoverflow threads or documentation on accessing/reformatting <em>already existing</em> Excel tables rather than creating new ones from scratch.</p>
  
  <p>edit: solution added based on David Zemen's answer (additional getters and setters for ListObject properties are available <a href="https://docs.microsoft.com/de-de/dotnet/api/microsoft.office.tools.excel.listobject.displayname?view=vsto-2017" rel="nofollow noreferrer">here</a>.</p>
  
  <pre><code>import xlwings
  
  df = ... # initialising some pandas DataFrame
  
  book = xlwings.Book()
  ws = book.sheets.active
  ws.range("A1").options(index=False).value = df
  
  # TODO: Create table
  # downside: does not seem to be possible to define multiple tables
  #           within a Sheet (based on explicit ranges)
  tbl = ea_sheet.api.ListObjects.Add(1) 
  
  
  # TODO: Set the name/formatting of the table
  tbl.DisplayName = "tabname"  # sets the tablename
  </code></pre>
  
  <p>I know that I can expand the range selection using <code>ws.range("A1").expand('table')</code> and know that I can use the <code>.name</code> property of ranges to define them as named range. </p>
  
  <p>However, does xlwings provide any means to create a table from a range (similar to using Home - Format as Table in the Excel UI)?</p>