title: How to autosize/resize the columns of a table in Lotus using VBA?
body: <p>I am coding up a VBA script to create &amp; email a table of data.  And while it does work, it's also ugly.  One thing I'd like to do is resize these columns so they don't take up the entire width of the page.</p>
  
  <p>The "autosize column" option would be nice, except I don't see anywhere in the API.  Alternatively, I'm open to manually setting the widths of each column.  Can someone tell me what code I need to add?</p>
  
  <pre><code>Dim rtNav As NotesRichTextNavigator
  Dim rtTbl As NotesRichTextTable
  Dim TblHeader_FontStyle As NotesRichTextStyle
  Dim TblBody_BackgroundStyle As NotesRichTextStyle
  Dim TblHeader_BackgroundStyle As NotesColorObject
  Dim TblBody_FontStyle As NotesColorObject
  
  Sub AppendTable()
  'Define styles
      Set TblHeader_BackgroundStyle = NtSession.CreateColorObject
          TblHeader_BackgroundStyle.NotesColor = COLOR_DARK_BLUE
      Set TblHeader_FontStyle = NtSession.CreateRichTextStyle
          TblHeader_FontStyle.NotesColor = COLOR_WHITE
          TblHeader_FontStyle.FontSize = 8
  
      Set TblBody_FontStyle = NtSession.CreateColorObject
          TblBody_FontStyle.NotesColor = COLOR_WHITE
      Set TblBody_BackgroundStyle = NtSession.CreateRichTextStyle
          TblBody_BackgroundStyle.NotesColor = COLOR_BLACK
          TblBody_BackgroundStyle.FontSize = 10
  '-----------------------------------------------------
  'Make table structure
      NtBod.AppendTable lRowCount:=1, lColumnCount:=5
      Set rtNav = NtBod.CreateNavigator
      Set rtTbl = rtNav.GetFirstElement(RTELEM_TYPE_TABLE)
      rtTbl.Style = TABLESTYLE_TOP
      Call NtBod.AppendStyle(TblHeader_FontStyle)
      Call rtTbl.SetColor(TblHeader_BackgroundStyle)
      rtNav.FindFirstElement (RTELEM_TYPE_TABLECELL)
  'The rest of the procedure to navigate the table and insert the data goes here
  </code></pre>