In addition to creating Collections in the interface, you can also import large sets of questions and blocks from Excel, based on the XLSForm standard. Advanced users will find it more practical to start from existing XLSForms than copying existing question content into the tool one by one.
By default, each XLS file will import as a new Collection. If your file only contains one question or one block, it will import just that one question or one block instead of creating a Collection. The name of the Collection is taken from the file name (duplicates of existing Collections are allowed). But it's easy to rename the Collection after importing it - just click on the Collection name in the left sidebar, then click the settings icon.
Use this Excel file as a template. The file generally follows the XLSForm format. There a few differences:
- The main sheet containing the questions should be name library instead of survey. If the sheet is named survey everything will be imported as a
- (Optional) Question blocks should be defined in the additional column called block, writing the same block title in each row of the table that should be included in the block. The block label has no limitations in terms of characters, but it needs to be the exact same spelling to avoid breaking the block up ('Household questions' is different from 'household questions'). Use a block title that makes it easy to identify the contents later on.
- Any row in the template sheet that doesn't have a value in the block column will be imported as a separate question.
- (Optional) Define any tags for the question or block by adding a column tag:[your tag name] for each tag, then writing '1' in each row that should use the tag. In the case of blocks, it's enough to write '1' in any of the rows in the block regardless which one. It's enough to mark one of the questions in the block, though it doesn't matter if several questions are tagged.
Some other suggestions:
- You can include groups in blocks. Just ensure that the 'begin group' line has a unique 'name' ID (as in all XLSForms) and that the opening (begin group) and closing (end group) are included in the block. Add the block name as the group label might be a good idea so that you see the block label after importing it to the formbuilder.
- You can include skip logic and validation rules within blocks that you import. That's very useful when importing entire blocks of questions into new form drafts without having to rebuild these advanced settings.
- You can add multiple languages to question and response labels with the usual XLSForm syntax (label::English, label::Español, etc.)