Excel Importer for Survey
Bulk-import answer sets into a Survey form from an Excel (.xlsx) file. Same API surface and validation rules as the CSV importer — pick whichever format your users already live in.
Features
- Reads
.xlsx natively (no Excel install, no Interop)
- Typed mapping per element type — strings, ints, comma lists, matrix coordinates — same rules as the CSV importer
- Multi-sheet support — pick the sheet by name or index
- Header row detection — first-row headers by default, configurable
- Validation against the form schema — per-row, per-column errors with human-readable messages
- Continue-on-error mode — surface all problems at once instead of stopping at the first
- Typed
ImportReturn — success count, failed rows with error lists, parsed List<ElementValue> per row
What's included
- Compiled NuGet package (
PSC.Survey.Shared.Imports.Excel) targeting netstandard2.1
- Full README with worked examples and a "bulk-onboard customers from Excel" recipe
LICENCE.md (one developer, annual commercial licence, unlimited end users, no redistribution)
Add to your project
dotnet add package PSC.Survey.Shared.Imports.Excel
using PSC.Survey.Shared.Imports.Excel;
var importer = new ExcelImport { ContinueOnError = true };
var result = importer.ImportData(stream, form, sheetIndex: 0);
Requirements
- .NET 6 / 8 / 10 (netstandard2.1)
PSC.Survey.Shared (models) — included as a NuGet dependency
Pair with
- Survey runtime — render the form
- CSV importer — same API for plain-text files
- JSON importer — same API for pre-built answer payloads