# XLSForm

Using Excel, you can create any survey using the XLSForm format. XLSForm is a standardized way to design surveys by structuring questions, options, and logic directly within an Excel spreadsheet. Each question, response choice, validation rule, or survey logic is clearly defined in dedicated worksheets, making it simple to build and maintain even complex surveys.&#x20;

Once designed, an XLSForm can easily be imported in ngSurvey using the XLSForm importer.

Here's a small sample illustrating the basic structure of an XLSForm which is based on 2 worksheets "survey" and "choices":

**survey worksheet**

| type                | name     | label                       |
| ------------------- | -------- | --------------------------- |
| text                | name     | What is your name?          |
| integer             | age      | How old are you?            |
| select\_one yes\_no | employed | Are you currently employed? |

**choices worksheet**

| list\_name | name | label |
| ---------- | ---- | ----- |
| yes\_no    | yes  | Yes   |
| yes\_no    | no   | No    |

This simple example demonstrates how clearly structured questions and choices allow rapid survey design and straightforward conversion to interactive survey forms.

{% hint style="warning" %}
Repeat and entities of the XLSForm format are not yet supported.
{% endhint %}

## 🚀 How to create an XLSForm survey

To start your first XLSForm based survey you may start by downloading the Excel based template below. This template contains the main structure around which you can build your XLS form and also documentation of the different types that can be used to create your form.

{% file src="<https://1025048312-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M8fLhS0bmfBRyq0HdUm%2Fuploads%2FisRKg53p5gDBHtW3fg0a%2Fngs_xlsform.xlsx?alt=media&token=9a4834d2-2469-448b-8371-915f21bffa8a>" %}

A standard XLSForm is built using 3 Excel sheets within the same Excel file :

* [**Survey sheet**](https://docs.ngsurvey.com/projects/import-export/xlsform/survey-sheet) the survey sheet contains the main structure of your survey with its questions, pages, constraints and visibility rules.
* [**Choices sheet**](https://docs.ngsurvey.com/projects/import-export/xlsform/choices-sheet) the choices sheet let you define groups of lists of answers. These list of answers can then be used as set of answers for the selection based questions that you have defined in the survey sheet.  &#x20;
* [**Settings sheet**](https://docs.ngsurvey.com/projects/import-export/xlsform/settings-sheet) the settings sheet let you define common properties for your form like the form title.&#x20;
