DeltaSheet converts legacy .xls workbooks to .xlsx or .xlsm using Microsoft Excel automation, while aiming to preserve embedded objects such as images, PDFs, and Outlook .msg files.
The internal extension ID stays xls2xlsx so existing installs can keep updating cleanly, but the visible product brand is now DeltaSheet.
Quick Access
Open the DeltaSheet icon from the VS Code Activity Bar after installing the extension.
Use DeltaSheet: Convert Active XLS when the workbook is already open.
Use DeltaSheet: Choose XLS File and Convert when the file lives somewhere else on disk.
Use DeltaSheet: Preview Batch Studio to scan a folder and preview the premium batch-conversion flow.
Free vs Pro
Free
Single-file .xls to .xlsx / .xlsm conversion
DeltaSheet Launchpad sidebar
Macro-aware save behavior
Embedded object verification
Batch Studio preview panel for folder scanning and premium upsell
Pro
Batch folder conversion
Preflight audit reports
Post-conversion validation reports
Workbook diff tooling
CLI and automation workflows
In the free Marketplace extension, Pro features are visible in the UI. Clicking them opens the configured purchase URL in your browser.
Shipping Model
Free edition: publish the Marketplace build as the normal DeltaSheet extension.
Pro edition: sell a separate DeltaSheet Pro VSIX on Gumroad.
The Pro VSIX is designed to replace the free install for paying users instead of asking them to manage a second codebase.
Packaging
npm run package:free: builds the free VSIX for Marketplace-style distribution.
npm run package:pro: builds the Pro VSIX for Gumroad delivery.
npm run package:all: builds both packages in one pass.
The packaging script temporarily adjusts the manifest for each edition, packages the right VSIX, and then restores the original root package.json.
Requirements
Windows: Microsoft Excel installed for COM automation.
macOS: Microsoft Excel installed for JXA / Apple Events automation.
Linux: best-effort fallback only. Conversion can work, but embedded object fidelity is not guaranteed.
Usage
Right-click a legacy .xls file in Explorer or an editor tab.
Or click the DeltaSheet sidebar icon for the Launchpad experience.
Choose DeltaSheet: Convert XLS to XLSX/XLSM.
Pick an output .xlsx or .xlsm path.
If macros are detected and xls2xlsx.forceXlsmWhenMacros is enabled, the output is upgraded to .xlsm automatically.
Batch Studio Preview
Run DeltaSheet: Preview Batch Studio.
Pick a folder that contains legacy .xls workbooks.
DeltaSheet scans the folder, counts matching files, and opens a premium-style batch dashboard.
The dashboard previews queue size, estimated run time, and the Pro workflow, then routes upgrade actions to your Gumroad link.
DeltaSheet Pro
The Pro VSIX turns Batch Studio into a real folder conversion workflow.
Each batch run creates a fresh output directory and writes deltasheet-pro-batch-summary.json.
The summary includes per-file status, macro detection, embed counts when available, output paths, and the conversion mode used.
Settings
xls2xlsx.forceXlsmWhenMacros default true: if the source has VBA, save as .xlsm.
xls2xlsx.enableVerification default true: compare embedded object counts before and after conversion.
xls2xlsx.proPurchaseUrl default https://gumroad.com: the website or Gumroad link opened for DeltaSheet Pro actions.
Notes
DeltaSheet is intentionally focused on legacy .xls to modern Excel formats. Reverse conversion is not exposed.
If a workbook contains macros, .xlsx would drop them, so DeltaSheet saves to .xlsm instead when that setting is enabled.
Password-protected workbooks may still prompt through Excel during automation.
Verification is best-effort: DeltaSheet compares legacy OLE storage counts with files under xl/embeddings/* in the output workbook.