<!-- Generated by tools/SharpCell.Docs from the XML documentation comments. Do not edit; run the tool with 'generate'. -->

# Table

```csharp
public sealed class Table
```

Namespace `SharpCell` · package `SharpCell`

An Excel table: a named range with column names, an optional header row and an optional totals row. Formulas refer to it by name, as in `Sales[Units]`. A table does not change after it is created.

## Properties

<a id="columns"></a>
### Columns

```csharp
public IReadOnlyList<string> Columns { get; }
```

The column names from left to right.

<a id="hasheaderrow"></a>
### HasHeaderRow

```csharp
public bool HasHeaderRow { get; }
```

Whether the first row holds the column names.

<a id="hastotalsrow"></a>
### HasTotalsRow

```csharp
public bool HasTotalsRow { get; }
```

Whether the last row holds totals.

<a id="name"></a>
### Name

```csharp
public string Name { get; }
```

The name formulas use, such as `Sales` in `Sales[Units]`.

<a id="range"></a>
### Range

```csharp
public string Range { get; }
```

The whole table as an A1 range, header and totals rows included, such as `A1:D10`.

<a id="worksheet"></a>
### Worksheet

```csharp
public Worksheet Worksheet { get; }
```

The sheet the table is on.

## Methods

<a id="tostring"></a>
### ToString()

```csharp
public override string ToString()
```

The table name.
