# Data Table

## Content

Data tables provide a structured way to perform What‑If Analysis by evaluating a formula against multiple sets of input values.
Instead of manually changing input cells and recording results, a data table automatically recalculates the same formula for each supplied input combination and returns all results in a single dynamic array.
In SpreadJS, data table functionality is implemented through the `SJS.TABLE` function. Unlike Excel’s legacy data tables, `SJS.TABLE` is a standard worksheet formula that can be edited, copied, nested inside other functions, and extended beyond two input variables.
Data tables are particularly useful for:

* Sensitivity analysis
* Scenario comparison
* Multi‑variable simulations
* Exploring how changes in assumptions affect calculated outcomes

Depending on the number of input variables provided, a data table can perform:

* One‑variable analysis
* Two‑variable analysis
* Multi‑variable analysis (beyond Excel’s traditional limit)

For detailed syntax and usage, see **[SJS.TABLE Function](/spreadjs/docs/features/what-if-analysis/data-table/sjs-table-function)**.
For rules governing input combinations and output shape, see **[Input and Result Rules](/spreadjs/docs/features/what-if-analysis/data-table/sjs-table-function/input-and-result-rules)**.
For performance considerations, see **[Performance and Calculation](/spreadjs/docs/features/what-if-analysis/data-table/performance-and-calculation)**.
For Excel interoperability details, see **[Excel Compatibility](/spreadjs/docs/features/what-if-analysis/excel-compatibility)**.