[]
        
(Showing Draft Content)

ITable

Interface ITable


public interface ITable
Represents a table object on a worksheet.

An ITable defines a structured data region that can include a header row, data rows, totals, filtering, sorting, and table-specific formatting. Calling ITables.add(IRange,boolean) to add a table to a worksheet returns an ITable object.


 worksheet.getRange("A1:B3").setValue(new Object[][] {
     {"Name", "Value"},
     {"Test", 100},
     {"Hello", 200}
 });
 ITable table = worksheet.getTables().add(worksheet.getRange("A1:B3"), true);
 table.setDisplayName("Table1");
 
  • Method Details

    • getName

      String getName()
      Gets the name of the table.

      Use this method to retrieve the table name that identifies the table in the worksheet.

      
       worksheet.getRange("A1:B3").setValue(new Object[][] {
           {"Product", "Amount"},
           {"Apple", 100},
           {"Orange", 200}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B3"), true);
       table.setName("SalesTable");
       String name = table.getName();
       
      Returns:
      The name of the table.
    • setName

      void setName(String value)
      Sets the name of the table.

      Use this method to set the table name that identifies the table in the worksheet.

      
       worksheet.getRange("A1:B3").setValue(new Object[][] {
           {"Product", "Amount"},
           {"Apple", 100},
           {"Orange", 200}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B3"), true);
       table.setName("SalesTable");
       ITable namedTable = worksheet.getTables().get("SalesTable");
       String namedTableAddress = namedTable.getRange().getAddress();
       
      Parameters:
      value - The name of the table.
    • getDisplayName

      String getDisplayName()
      Gets the display name of this ITable.

      The display name is the user-facing name of the table.

      
       worksheet.getRange("A1:B3").setValue(new Object[][] {
           {"Product", "Amount"},
           {"Apple", 100},
           {"Orange", 200}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B3"), true);
       table.setDisplayName("SalesTable");
       String displayName = table.getDisplayName();
       
      Returns:
      The display name of this ITable.
    • setDisplayName

      void setDisplayName(String value)
      Sets the display name for the specified ITable.

      The display name is the user-facing name of the table.

      
       worksheet.getRange("A1:B3").setValue(new Object[][] {
           {"Product", "Amount"},
           {"Apple", 100},
           {"Orange", 200}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B3"), true);
       table.setDisplayName("SalesTable");
       
      Parameters:
      value - The display name for the specified ITable.
    • getComment

      String getComment()
      Gets the comment associated with the table object.

      This method returns the text previously assigned through setComment(String) for the current table.

      
       worksheet.getRange("A1:B3").setValue(new Object[][] {
           {"Name", "Value"},
           {"Test", 100},
           {"Total", 200}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B3"), true);
       table.setComment("Monthly summary table");
       String comment = table.getComment();
       
      Returns:
      The comment associated with the table object.
    • setComment

      void setComment(String value)
      Sets the comment associated with the table object.

      Use this method to assign the comment text for the current table.

      
       worksheet.getRange("A1:B3").setValue(new Object[][] {
           {"Name", "Value"},
           {"Test", 100},
           {"Total", 200}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B3"), true);
       table.setComment("Monthly summary table");
       
      Parameters:
      value - The comment associated with the table object.
    • getSort

      ISort getSort()
      Gets the sort settings for this ITable.

      The returned ISort object provides access to the sort fields and sort order applied to the table data. After configuring the sort fields, call ISort.apply() to sort the table.

      
       worksheet.getRange("A1:B4").setValue(new Object[][] {
           {"Name", "Score"},
           {"Tom", 80},
           {"Nancy", 95},
           {"Jack", 88}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B4"), true);
       ISort sort = table.getSort();
       sort.getSortFields().add(new ValueSortField(worksheet.getRange("B2:B4"), SortOrder.Descending));
       sort.apply();
       
      Returns:
      The sort settings for this ITable.
    • getAutoFilter

      IAutoFilter getAutoFilter()
      Gets the IAutoFilter for this table.

      The returned auto filter represents the filtering settings that apply to the table range.

      
       worksheet.getRange("A1:C4").setValue(new Object[][] {
           {"Name", "Value", "Category"},
           {"A", 100, "X"},
           {"B", 200, "Y"},
           {"C", 100, "X"}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:C4"), true);
       table.getRange().autoFilter(2, "X");
       IAutoFilter autoFilter = table.getAutoFilter();
       Object criteria1 = autoFilter.getFilters().get(2).getCriteria1();
       
      Returns:
      The IAutoFilter for this table.
    • getRange

      IRange getRange()
      Returns the IRange object that represents the range to which the specified table object applies.
      
       worksheet.getRange("A1:B3").setValue(new Object[][] {{"Name", "Value"}, {"A", 100}, {"B", 200}});
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B3"), true);
       IRange tableRange = table.getRange();
       
      Returns:
      The IRange object that represents the range to which the specified table object applies.
    • getDataRange

      IRange getDataRange()
      Gets the IRange that represents the data area of the table.

      The returned range contains the table rows between the header row and the insert row. It does not include the header row.

      
       worksheet.getRange("A1:B3").setValue(new Object[][] {
           {"Name", "Value"},
           {"Apple", 100},
           {"Pear", 200}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B3"), true);
       IRange dataRange = table.getDataRange();
       
      Returns:
      The IRange that represents the data area of the table.
    • getHeaderRange

      IRange getHeaderRange()
      Gets the IRange object that represents the header row of the table.

      Use this method to access the cells that contain the table column headers.

      
       worksheet.getRange("A1:B3").setValue(new Object[][] {
           {"Product", "Amount"},
           {"Apple", 100},
           {"Pear", 200}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B3"), true);
       IRange headerRange = table.getHeaderRange();
       headerRange.get(0, 1).setValue("Total");
       
      Returns:
      The IRange object that represents the header row of the table.
    • getTotalsRange

      IRange getTotalsRange()
      Gets the totals row range of the table.

      Returns the IRange that represents the totals row of this ITable when the totals row is visible.

      
       worksheet.getRange("A1:B3").setValue(new Object[][] {
           {"Product", "Amount"},
           {"Apple", 100},
           {"Orange", 200}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B3"), true);
       table.setShowTotals(true);
       IRange totalsRange = table.getTotalsRange();
       
      Returns:
      The IRange that represents the totals row of the table.
    • getShowAutoFilter

      boolean getShowAutoFilter()
      Gets whether the AutoFilter is displayed.

      This method returns true only when the table headers are displayed and AutoFilter is enabled for the table.

      
       worksheet.getRange("A1:B3").setValue(new Object[][] {
           {"Name", "Value"},
           {"Test", 100},
           {"Hello", 200}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B3"), true);
       table.setShowAutoFilter(true);
       boolean showAutoFilter = table.getShowAutoFilter();
       
      Returns:
      true if the AutoFilter is displayed; otherwise, false.
    • setShowAutoFilter

      void setShowAutoFilter(boolean value)
      Sets whether the AutoFilter is displayed.

      This method Sets true only when the table headers are displayed and AutoFilter is enabled for the table.

      
       worksheet.getRange("A1:B3").setValue(new Object[][] {
           {"Name", "Value"},
           {"Test", 100},
           {"Hello", 200}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B3"), true);
       table.setShowAutoFilter(true);
       
      Parameters:
      value - Whether the AutoFilter is displayed.
    • getShowAutoFilterDropDown

      boolean getShowAutoFilterDropDown()
      Gets whether the table filter button is visible.

      This property indicates whether the drop-down buttons are shown in the table header row.

      
       worksheet.getRange("A1:B3").setValue(new Object[][] {
           {"Name", "Value"},
           {"Test", 100},
           {"Hello", 200}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B3"), true);
       boolean showAutoFilterDropDown = table.getShowAutoFilterDropDown();
       
      Returns:
      true if the table filter button is visible; otherwise, false.
    • setShowAutoFilterDropDown

      void setShowAutoFilterDropDown(boolean value)
      Sets whether the table filter button is visible.

      This property indicates whether the drop-down buttons are shown in the table header row.

      
       worksheet.getRange("A1:B3").setValue(new Object[][] {
           {"Name", "Value"},
           {"Test", 100},
           {"Hello", 200}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B3"), true);
       table.setShowAutoFilterDropDown(true);
       
      Parameters:
      value - Whether the table filter button is visible.
    • getShowHeaders

      boolean getShowHeaders()
      Gets whether this ITable displays the header row that contains column names.

      Use this property to check whether the table displays a header row that contains column names.

      
       worksheet.getRange("A1:B3").setValue(new Object[][] {
           {"Name", "Value"},
           {"Apple", 100},
           {"Orange", 200}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B3"), true);
       boolean showHeaders = table.getShowHeaders();
       
      Returns:
      true if this ITable displays the header row that contains column names; otherwise, false.
    • setShowHeaders

      void setShowHeaders(boolean value)
      Sets whether this ITable displays the header row that contains column names.

      Use this property to set whether the table displays a header row that contains column names.

      
       worksheet.getRange("A1:B3").setValue(new Object[][] {
           {"Name", "Value"},
           {"Apple", 100},
           {"Orange", 200}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B3"), true);
       table.setShowHeaders(true);
       
      Parameters:
      value - Whether this ITable displays the header row that contains column names.
    • getShowTableStyleColumnStripes

      boolean getShowTableStyleColumnStripes()
      Gets whether the column stripe table style is applied to this ITable.

      When this property is true, the applied table style uses alternating formatting for table columns.

      
       worksheet.getRange("A1:C3").setValue(new Object[][] {
           {"Name", "Q1", "Q2"},
           {"Tea", 100, 120},
           {"Coffee", 90, 110}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:C3"), true);
       table.setShowTableStyleColumnStripes(true);
       boolean showColumnStripes = table.getShowTableStyleColumnStripes();
       
      Returns:
      true if the column stripe table style is applied to this ITable; otherwise, false.
    • setShowTableStyleColumnStripes

      void setShowTableStyleColumnStripes(boolean value)
      Sets whether the column stripe table style is applied to this ITable.

      When this property is true, the applied table style uses alternating formatting for table columns.

      
       worksheet.getRange("A1:C3").setValue(new Object[][] {
           {"Name", "Q1", "Q2"},
           {"Tea", 100, 120},
           {"Coffee", 90, 110}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:C3"), true);
       table.setShowTableStyleColumnStripes(true);
       
      Parameters:
      value - Whether the column stripe table style is applied to this ITable.
    • getShowTableStyleFirstColumn

      boolean getShowTableStyleFirstColumn()
      Gets whether the table style is applied to the first column.

      This property indicates whether the table style is applied to the first column of the current ITable.

      
       worksheet.getRange("A1:B3").setValue(new Object[][] {
           {"Name", "Amount"},
           {"Apple", 100},
           {"Orange", 200}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B3"), true);
       table.setShowTableStyleFirstColumn(true);
       boolean showFirstColumn = table.getShowTableStyleFirstColumn();
       
      Returns:
      true if the table style is applied to the first column; otherwise, false.
    • setShowTableStyleFirstColumn

      void setShowTableStyleFirstColumn(boolean value)
      Sets whether the first-column table style element is applied to this ITable.

      This property indicates whether the first-column table style element is applied to the first column of the current ITable.

      
       worksheet.getRange("A1:B3").setValue(new Object[][] {
           {"Name", "Amount"},
           {"Apple", 100},
           {"Orange", 200}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B3"), true);
       table.setShowTableStyleFirstColumn(true);
       
      Parameters:
      value - Whether the first-column table style element is applied to the first column of the current ITable.
    • getShowTableStyleLastColumn

      boolean getShowTableStyleLastColumn()
      Gets whether the table style is applied to the last column.

      This property indicates whether the table style is applied to the last column of the current ITable.

      
       worksheet.getRange("A1:B3").setValue(new Object[][] {
           {"Name", "Amount"},
           {"Apple", 100},
           {"Pear", 200}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B3"), true);
       table.setShowTableStyleLastColumn(true);
       boolean showTableStyleLastColumn = table.getShowTableStyleLastColumn();
       
      Returns:
      true if the table style is applied to the last column; otherwise, false.
    • setShowTableStyleLastColumn

      void setShowTableStyleLastColumn(boolean value)
      Sets whether the last-column table style element is applied to this ITable.

      This property indicates whether the last-column table style element is applied to the last column of the current ITable.

      
       worksheet.getRange("A1:B3").setValue(new Object[][] {
           {"Name", "Amount"},
           {"Apple", 100},
           {"Pear", 200}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B3"), true);
       table.setShowTableStyleLastColumn(true);
       
      Parameters:
      value - Whether the last column style is displayed for this ITable.
    • getShowTableStyleRowStripes

      boolean getShowTableStyleRowStripes()
      Gets whether banded rows are displayed for this ITable.

      When this property is true, the applied table style uses alternating row formatting.

      
       worksheet.getRange("A1:B3").setValue(new Object[][] {
           {"Name", "Value"},
           {"Tea", 10},
           {"Coffee", 12}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B3"), true);
       boolean showRowStripes = table.getShowTableStyleRowStripes();
       
      Returns:
      true if banded rows are displayed for this ITable; otherwise, false.
    • setShowTableStyleRowStripes

      void setShowTableStyleRowStripes(boolean value)
      Sets whether banded rows are displayed for this ITable.

      When this property is true, the applied table style uses alternating row formatting.

      
       worksheet.getRange("A1:B3").setValue(new Object[][] {
           {"Name", "Value"},
           {"Tea", 10},
           {"Coffee", 12}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B3"), true);
       table.setShowTableStyleRowStripes(true);
       
      Parameters:
      value - Whether banded rows are displayed for this ITable.
    • getShowTotals

      boolean getShowTotals()
      Gets whether the totals row is visible.

      Use this method to determine whether the table currently displays a totals row.

      
       worksheet.getRange("A1:B3").setValue(new Object[][] {
           {"Product", "Amount"},
           {"Apple", 100},
           {"Orange", 200}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B3"), true);
       table.setShowTotals(true);
       boolean showTotals = table.getShowTotals();
       
      Returns:
      true if the totals row is visible; otherwise, false.
    • setShowTotals

      void setShowTotals(boolean value)
      Sets whether the totals row is visible.

      Use this method to set whether the table currently displays a totals row.

      
       worksheet.getRange("A1:B3").setValue(new Object[][] {
           {"Product", "Amount"},
           {"Apple", 100},
           {"Orange", 200}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B3"), true);
       table.setShowTotals(true);
       
      Parameters:
      value - Whether the totals row is visible.
    • getColumns

      ITableColumns getColumns()
      Gets the collection of columns in this ITable.

      The returned ITableColumns collection contains all columns that belong to the table, including their names and data ranges.

      
       worksheet.getRange("A1:B3").setValue(new Object[][] {
           {"Name", "Sales"},
           {"Apple", 100},
           {"Orange", 200}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B3"), true);
       ITableColumns columns = table.getColumns();
       ITableColumn salesColumn = columns.get(1);
       
      Returns:
      The ITableColumns collection of columns in this ITable.
    • getRows

      ITableRows getRows()
      Gets the collection of data rows in this ITable.

      The returned ITableRows object contains the ITableRow objects that belong to the table data area.

      
       worksheet.getRange("A1:B3").setValue(new Object[][] {
           {"Name", "Value"},
           {"Apple", 100},
           {"Pear", 200}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B3"), true);
       ITableRows rows = table.getRows();
       ITableRow firstRow = rows.get(0);
       
      Returns:
      The ITableRows collection of data rows in this ITable.
    • getTableStyle

      ITableStyle getTableStyle()
      Gets the table style applied to the table.

      The returned ITableStyle represents the style currently applied to the table, including built-in and custom table styles.

      
       worksheet.getRange("A1:B3").setValue(new Object[][] {
           {"Name", "Value"},
           {"Apple", 100},
           {"Orange", 200}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B3"), true);
       table.setTableStyle(workbook.getTableStyles().get("TableStyleLight11"));
       ITableStyle tableStyle = table.getTableStyle();
       
      Returns:
      The table style applied to the table.
    • setTableStyle

      void setTableStyle(ITableStyle value)
      Sets the table style applied to the table.

      Use this method to apply a built-in or custom table style to the table.

      
       worksheet.getRange("A1:B3").setValue(new Object[][] {
           {"Name", "Value"},
           {"Apple", 100},
           {"Orange", 200}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B3"), true);
       table.setTableStyle(workbook.getTableStyles().get("TableStyleLight11"));
       
      Parameters:
      value - The table style applied to the table.
    • resize

      void resize(IRange range)
      Resizes this ITable to a new range without inserting or moving cells.

      The new range must remain on the same header row as the current table and must overlap the current table range. This method does not rearrange worksheet cells; it only updates the table boundary.

      
       worksheet.getRange("A1:C4").setValue(new Object[][] {
           {"Name", "Region", "Sales"},
           {"Alice", "East", 100},
           {"Bob", "West", 120},
           {"Carol", "North", 140}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:C4"), true);
       worksheet.getRange("D1:D4").setValue(new Object[][] {
           {"Status"},
           {"Open"},
           {"Closed"},
           {"Open"}
       });
       table.resize(worksheet.getRange("A1:D4"));
       
      Parameters:
      range - The new table range. Must be a single, non-empty IRange that overlaps the current table range.
      Throws:
      IllegalArgumentException - if range is null, empty, contains multiple selections, does not overlap the current table range, or does not start on the same row as the current table.
      UnsupportedOperationException - if the table is bound to a data manager.
    • delete

      void delete()
      Deletes this ITable object and clears the cell data from the worksheet.

      Use this method to remove both the table definition and the cells covered by the table. To keep the data and remove only the table object, use convertToRange() instead.

      
       worksheet.getRange("A1:B3").setValue(new Object[][] {
           {"Name", "Value"},
           {"Test", 100},
           {"Sample", 200}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B3"), true);
       table.delete();
       
    • getBindingPath

      String getBindingPath()
      Gets the binding path of the current table.

      The binding path identifies the data path used when the table is bound to a data source.

      
       worksheet.setDataSource(new JsonDataSource(
           "{\"sales\":[{\"name\":\"Alice\",\"amount\":100},{\"name\":\"Bob\",\"amount\":200}]}"));
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B3"), true);
       table.getColumns().get(0).setDataField("name");
       table.getColumns().get(1).setDataField("amount");
       table.setBindingPath("sales");
       String bindingPath = table.getBindingPath();
       
      Returns:
      The binding path of the current table.
    • setBindingPath

      void setBindingPath(String value)
      Sets the binding path of the current table.

      The binding path identifies the data path used when the table is bound to a data source.

      
       worksheet.setDataSource(new JsonDataSource(
           "{\"sales\":[{\"name\":\"Alice\",\"amount\":100},{\"name\":\"Bob\",\"amount\":200}]}"));
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B3"), true);
       table.getColumns().get(0).setDataField("name");
       table.getColumns().get(1).setDataField("amount");
       table.setBindingPath("sales");
       Object firstName = worksheet.getRange("A2").getValue();
       
      Parameters:
      value - The binding path of the current table.
    • getAutoGenerateColumns

      boolean getAutoGenerateColumns()
      Gets whether the table generates columns automatically when it is bound to a data source.

      When this property is true, the table can create columns from the fields in the bound data source during data binding.

      
       worksheet.setDataSource(new JsonDataSource("{\"ds\":[{\"name\":\"jack\",\"age\":12}]}"));
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:C2"), true);
       table.setAutoGenerateColumns(true);
       table.setBindingPath("ds");
       boolean autoGenerateColumns = table.getAutoGenerateColumns();
       
      Returns:
      true if the table generates columns automatically when it is bound to a data source; otherwise, false.
    • setAutoGenerateColumns

      void setAutoGenerateColumns(boolean value)
      Sets whether the table generates columns automatically when it is bound to a data source.

      When this property is true, the table can create columns from the fields in the bound data source during data binding.

      
       worksheet.setDataSource(new JsonDataSource("{\"ds\":[{\"name\":\"jack\",\"age\":12}]}"));
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:C2"), true);
       table.setAutoGenerateColumns(true);
       table.setBindingPath("ds");
       
      Parameters:
      value - Whether the table generates columns automatically when it is bound to a data source.
    • fromJson

      void fromJson(String json)
      Generates the table from the specified JSON string.
      
       worksheet.getRange("A1:B3").setValue(new Object[][] {{"Name", "Value"}, {"A", 100}, {"B", 200}});
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B3"), true);
       String json = table.toJson();
       table.fromJson(json);
       
      Parameters:
      json - The JSON string used to generate the table.
    • toJson

      String toJson()
      Generates a JSON string from the table.
      
       worksheet.getRange("A1:B3").setValue(new Object[][] {{"Name", "Value"}, {"A", 100}, {"B", 200}});
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B3"), true);
       String json = table.toJson();
       
      Returns:
      The JSON string generated from the table.
    • getExpandBoundRows

      boolean getExpandBoundRows()
      Gets whether the table can add or delete entire worksheet rows during data binding.

      This property indicates whether the table is allowed to expand or shrink by whole rows when its bound data changes.

      
       worksheet.getRange("A1:B3").setValue(new Object[][] {
           {"Name", "Value"},
           {"Item A", 100},
           {"Item B", 200}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B3"), true);
       table.setExpandBoundRows(true);
       boolean expandBoundRows = table.getExpandBoundRows();
       
      Returns:
      true if the table can add or delete entire worksheet rows during data binding; otherwise, false.
    • setExpandBoundRows

      void setExpandBoundRows(boolean value)
      Sets whether the table can add or delete entire worksheet rows during data binding.

      This property indicates whether the table is allowed to expand or shrink by whole rows when its bound data changes.

      
       worksheet.getRange("A1:B3").setValue(new Object[][] {
           {"Name", "Value"},
           {"Item A", 100},
           {"Item B", 200}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B3"), true);
       table.setExpandBoundRows(true);
       
      Parameters:
      value - Whether the table can add or delete entire worksheet rows during data binding.
    • convertToRange

      void convertToRange()
      Converts this table to a regular range of cells.

      After calling this method, the cells remain on the worksheet as normal range data instead of being managed as an ITable.

      
       worksheet.getRange("A1:B3").setValue(new Object[][] {
           {"Name", "Value"},
           {"Test", 100},
           {"Hello", 200}
       });
       ITable table = worksheet.getTables().add(worksheet.getRange("A1:B3"), true);
       table.convertToRange();