Skip to content

main · 1.1 (unreleased)

Documentation

Users and maintainers · Index · CurrentMarkdownAgent index

Status: Current.

Allors Excel is a .NET library for Excel add-ins. It gives an add-in a virtual workbook: workbooks, worksheets and cells that the add-in reads and writes as ordinary objects with zero-based coordinates. Changes are collected and written to Excel in blocks when a worksheet is flushed, and the changes a user makes in Excel come back as events. The same program runs against an in-memory workbook, so the logic of an add-in can be tested without Excel.

Users write an IProgram and host it in Excel with Excel-DNA or VSTO, or run it headless in tests and tools. Maintainers change the library, the hosts, the build and these pages. README.md introduces the project. The writing guide defines the rules for these pages; Terminology records the agreed names. These pages are for humans. Agents use the same technical content, following the instructions in AGENTS.md.

Allors Excel is one of Allors’s supporting open-source tools. Its packages are licensed under LGPL-3.0-or-later, as their package metadata states. Ask questions and report problems through the repository’s issues.

PageKindStatusContent
Getting startedTutorialCurrentWrite a program that fills a worksheet, run it against the headless workbook without Excel, and read the result back.
How the virtual workbook worksExplanationCurrentThe abstractions, the two implementations, the program’s lifecycle, dirty tracking and Flush, and how changes made in Excel come back.
Build an Excel add-inHow-to guideCurrentHost a program in Excel with Excel-DNA or VSTO, wire the ribbon, track only your own workbooks, and test the program headless.
Bind cells to your modelHow-to guideCurrentUse Binder and Binding to push model values into cells and to take edits back, with a style for changed cells.
API referenceReferenceCurrentEvery public type and member of Allors.Excel, and what the headless and interop implementations do with it.
Packages and versionsReferenceCurrentThe NuGet packages, their target frameworks and dependencies, the published versions and how they differ from main, versioning and the licence.
TerminologyReferenceCurrentAgreed names for the add-in, the program, the virtual workbook, flushing and the implementations.

The pages under internals/ describe how the library and the repository are built. A user must not rely on them: they can change with any version.

PageKindStatusContent
ArchitectureExplanationCurrentThe projects and their references, the interop render pipeline, the headless implementation, the shared tests and the Excel fixture, and the known defects.
Build and testHow-to guideCurrentPrerequisites, the Task targets, the five test passes, CI, versioning and the release workflow.
Writing documentationHow-to guideCurrentAudience, Diátaxis, status, Oxford English, stable terminology, visual explanations and review.
Documentation websiteDecision recordCurrentThe adoption of the Allors documentation standard, what was reused, validation and where the website is published.

The writing guide defines page kinds and statuses. Audience, kind and status describe different things: who a page serves, what it helps them do and whether it describes current behaviour.