400 lines
14 KiB
Markdown
400 lines
14 KiB
Markdown
# Excel parity checklist
|
|
|
|
<!-- Generated by `cargo xtask parity` from crates/engine/src/catalog.rs. Don't edit by hand. -->
|
|
|
|
Each entry is an Excel ribbon or menu command (feature names only). It counts as implemented when GridCraft registers a command with the same id. This measures breadth only; the overall assessment (depth, fidelity, effort) is in [target-app-parity.md](target-app-parity.md).
|
|
|
|
**Overall: 274 / 290 commands implemented (94.5%).**
|
|
|
|
| Tab | Implemented | Total | Parity |
|
|
|---|---|---|---|
|
|
| File | 11 | 11 | 100% |
|
|
| Home | 94 | 94 | 100% |
|
|
| Insert | 17 | 25 | 68% |
|
|
| Draw | 4 | 4 | 100% |
|
|
| Page Layout | 23 | 23 | 100% |
|
|
| Formulas | 23 | 23 | 100% |
|
|
| Data | 23 | 28 | 82% |
|
|
| Review | 15 | 18 | 83% |
|
|
| View | 20 | 20 | 100% |
|
|
| Automate | 3 | 3 | 100% |
|
|
| Table Design | 13 | 13 | 100% |
|
|
| Chart Design | 8 | 8 | 100% |
|
|
| Format | 3 | 3 | 100% |
|
|
| PivotTable Analyze | 13 | 13 | 100% |
|
|
| PivotTable Design | 4 | 4 | 100% |
|
|
|
|
## File (11 / 11, 100%)
|
|
|
|
Implemented:
|
|
|
|
- `file.new` New (File)
|
|
- `file.open` Open (File)
|
|
- `file.save` Save (File)
|
|
- `file.saveAs` Save As (File)
|
|
- `file.close` Close (File)
|
|
- `file.print` Print (File)
|
|
- `file.exportPdf` Export to PDF (Export)
|
|
- `file.exportCsv` CSV (Export)
|
|
- `file.exportHtml` Web Page (Export)
|
|
- `file.properties` Properties (Info)
|
|
- `file.options` Options (Options)
|
|
|
|
## Home (94 / 94, 100%)
|
|
|
|
Implemented:
|
|
|
|
- `edit.paste` Paste (Clipboard)
|
|
- `edit.pasteSpecial` Paste Special (Clipboard)
|
|
- `edit.cut` Cut (Clipboard)
|
|
- `edit.copy` Copy (Clipboard)
|
|
- `edit.formatPainter` Format Painter (Clipboard)
|
|
- `home.fontName` Font (Font)
|
|
- `home.fontSize` Font Size (Font)
|
|
- `home.increaseFontSize` Increase Font Size (Font)
|
|
- `home.decreaseFontSize` Decrease Font Size (Font)
|
|
- `home.bold` Bold (Font)
|
|
- `home.italic` Italic (Font)
|
|
- `home.underline` Underline (Font)
|
|
- `home.doubleUnderline` Double Underline (Font)
|
|
- `home.strikethrough` Strikethrough (Font)
|
|
- `home.superscript` Superscript (Font)
|
|
- `home.subscript` Subscript (Font)
|
|
- `home.borders` Borders (Font)
|
|
- `home.drawBorder` Draw Border (Font)
|
|
- `home.fillColor` Fill Color (Font)
|
|
- `home.fontColor` Font Color (Font)
|
|
- `home.alignTop` Top Align (Alignment)
|
|
- `home.alignMiddle` Middle Align (Alignment)
|
|
- `home.alignBottom` Bottom Align (Alignment)
|
|
- `home.orientation` Orientation (Alignment)
|
|
- `home.alignLeft` Align Left (Alignment)
|
|
- `home.alignCenter` Center (Alignment)
|
|
- `home.alignRight` Align Right (Alignment)
|
|
- `home.decreaseIndent` Decrease Indent (Alignment)
|
|
- `home.increaseIndent` Increase Indent (Alignment)
|
|
- `home.wrapText` Wrap Text (Alignment)
|
|
- `home.mergeCenter` Merge & Center (Alignment)
|
|
- `home.mergeAcross` Merge Across (Alignment)
|
|
- `home.mergeCells` Merge Cells (Alignment)
|
|
- `home.unmergeCells` Unmerge Cells (Alignment)
|
|
- `home.numberFormat` Number Format (Number)
|
|
- `home.accounting` Accounting Number Format (Number)
|
|
- `home.percent` Percent Style (Number)
|
|
- `home.comma` Comma Style (Number)
|
|
- `home.increaseDecimal` Increase Decimal (Number)
|
|
- `home.decreaseDecimal` Decrease Decimal (Number)
|
|
- `home.conditionalFormat` Conditional Formatting (Styles)
|
|
- `home.clearRules` Clear Rules (Styles)
|
|
- `home.manageRules` Manage Rules (Styles)
|
|
- `home.formatAsTable` Format as Table (Styles)
|
|
- `home.cellStyle` Cell Styles (Styles)
|
|
- `home.newCellStyle` New Cell Style (Styles)
|
|
- `home.insertCells` Insert Cells (Cells)
|
|
- `home.insertRows` Insert Sheet Rows (Cells)
|
|
- `home.insertColumns` Insert Sheet Columns (Cells)
|
|
- `home.insertSheet` Insert Sheet (Cells)
|
|
- `home.deleteCells` Delete Cells (Cells)
|
|
- `home.deleteRows` Delete Sheet Rows (Cells)
|
|
- `home.deleteColumns` Delete Sheet Columns (Cells)
|
|
- `home.deleteSheet` Delete Sheet (Cells)
|
|
- `home.rowHeight` Row Height (Cells)
|
|
- `home.autofitRowHeight` AutoFit Row Height (Cells)
|
|
- `home.columnWidth` Column Width (Cells)
|
|
- `home.autofitColumnWidth` AutoFit Column Width (Cells)
|
|
- `home.defaultWidth` Default Width (Cells)
|
|
- `home.hideRows` Hide Rows (Cells)
|
|
- `home.hideColumns` Hide Columns (Cells)
|
|
- `home.unhideRows` Unhide Rows (Cells)
|
|
- `home.unhideColumns` Unhide Columns (Cells)
|
|
- `sheet.hide` Hide Sheet (Cells)
|
|
- `sheet.unhide` Unhide Sheet (Cells)
|
|
- `sheet.rename` Rename Sheet (Cells)
|
|
- `sheet.move` Move or Copy Sheet (Cells)
|
|
- `sheet.tabColor` Tab Color (Cells)
|
|
- `review.protectSheet` Protect Sheet (Cells)
|
|
- `home.lockCell` Lock Cell (Cells)
|
|
- `home.formatCells` Format Cells (Cells)
|
|
- `formulas.autoSum` AutoSum (Editing)
|
|
- `edit.fillDown` Fill Down (Editing)
|
|
- `edit.fillRight` Fill Right (Editing)
|
|
- `edit.fillUp` Fill Up (Editing)
|
|
- `edit.fillLeft` Fill Left (Editing)
|
|
- `edit.fillSeries` Series (Editing)
|
|
- `edit.flashFill` Flash Fill (Editing)
|
|
- `edit.clearAll` Clear All (Editing)
|
|
- `edit.clearFormats` Clear Formats (Editing)
|
|
- `edit.clearContents` Clear Contents (Editing)
|
|
- `edit.clearComments` Clear Comments (Editing)
|
|
- `edit.clearHyperlinks` Clear Hyperlinks (Editing)
|
|
- `data.sortAscending` Sort A to Z (Editing)
|
|
- `data.sortDescending` Sort Z to A (Editing)
|
|
- `data.sort` Custom Sort (Editing)
|
|
- `data.filter` Filter (Editing)
|
|
- `data.clearFilter` Clear Filter (Editing)
|
|
- `data.reapply` Reapply (Editing)
|
|
- `edit.find` Find (Editing)
|
|
- `edit.replace` Replace (Editing)
|
|
- `edit.goTo` Go To (Editing)
|
|
- `edit.goToSpecial` Go To Special (Editing)
|
|
- `home.addIns` Add-ins (Add-ins)
|
|
|
|
## Insert (17 / 25, 68%)
|
|
|
|
Implemented:
|
|
|
|
- `insert.pivotTable` PivotTable (Tables)
|
|
- `insert.recommendedPivotTables` Recommended PivotTables (Tables)
|
|
- `insert.table` Table (Tables)
|
|
- `insert.picture` Pictures (Illustrations)
|
|
- `insert.shape` Shapes (Illustrations)
|
|
- `insert.icons` Icons (Illustrations)
|
|
- `insert.recommendedCharts` Recommended Charts (Charts)
|
|
- `insert.chart` Charts (Charts)
|
|
- `insert.pivotChart` PivotChart (Charts)
|
|
- `insert.sparkline` Sparklines (Sparklines)
|
|
- `insert.slicer` Slicer (Filters)
|
|
- `insert.link` Link (Links)
|
|
- `review.newComment` Comment (Comments)
|
|
- `insert.textBox` Text Box (Text)
|
|
- `pageLayout.headerFooter` Header & Footer (Text)
|
|
- `insert.symbol` Symbol (Symbols)
|
|
- `insert.checkbox` Checkbox (Cell Controls)
|
|
|
|
Missing:
|
|
|
|
- `insert.smartArt` SmartArt (Illustrations)
|
|
- `insert.screenshot` Screenshot (Illustrations)
|
|
- `insert.map` Maps (Charts)
|
|
- `insert.timeline` Timeline (Filters)
|
|
- `insert.wordArt` WordArt (Text)
|
|
- `insert.signatureLine` Signature Line (Text)
|
|
- `insert.object` Object (Text)
|
|
- `insert.equation` Equation (Symbols)
|
|
|
|
## Draw (4 / 4, 100%)
|
|
|
|
Implemented:
|
|
|
|
- `draw.pen` Pen (Tools)
|
|
- `draw.eraser` Eraser (Tools)
|
|
- `draw.lasso` Lasso Select (Tools)
|
|
- `draw.inkToShape` Ink to Shape (Convert)
|
|
|
|
## Page Layout (23 / 23, 100%)
|
|
|
|
Implemented:
|
|
|
|
- `pageLayout.theme` Themes (Themes)
|
|
- `pageLayout.themeColors` Colors (Themes)
|
|
- `pageLayout.themeFonts` Fonts (Themes)
|
|
- `pageLayout.themeEffects` Effects (Themes)
|
|
- `pageLayout.margins` Margins (Page Setup)
|
|
- `pageLayout.orientation` Orientation (Page Setup)
|
|
- `pageLayout.size` Size (Page Setup)
|
|
- `pageLayout.printArea` Print Area (Page Setup)
|
|
- `pageLayout.breaks` Breaks (Page Setup)
|
|
- `pageLayout.background` Background (Page Setup)
|
|
- `pageLayout.printTitles` Print Titles (Page Setup)
|
|
- `pageLayout.pageSetup` Page Setup (Page Setup)
|
|
- `pageLayout.scaleToFit` Scale to Fit (Scale to Fit)
|
|
- `view.gridlines` View Gridlines (Sheet Options)
|
|
- `pageLayout.printGridlines` Print Gridlines (Sheet Options)
|
|
- `view.headings` View Headings (Sheet Options)
|
|
- `pageLayout.printHeadings` Print Headings (Sheet Options)
|
|
- `arrange.bringForward` Bring Forward (Arrange)
|
|
- `arrange.sendBackward` Send Backward (Arrange)
|
|
- `arrange.selectionPane` Selection Pane (Arrange)
|
|
- `arrange.align` Align (Arrange)
|
|
- `arrange.group` Group (Arrange)
|
|
- `arrange.rotate` Rotate (Arrange)
|
|
|
|
## Formulas (23 / 23, 100%)
|
|
|
|
Implemented:
|
|
|
|
- `formulas.insertFunction` Insert Function (Function Library)
|
|
- `formulas.recentlyUsed` Recently Used (Function Library)
|
|
- `formulas.financial` Financial (Function Library)
|
|
- `formulas.logical` Logical (Function Library)
|
|
- `formulas.text` Text (Function Library)
|
|
- `formulas.dateTime` Date & Time (Function Library)
|
|
- `formulas.lookupReference` Lookup & Reference (Function Library)
|
|
- `formulas.mathTrig` Math & Trig (Function Library)
|
|
- `formulas.moreFunctions` More Functions (Function Library)
|
|
- `formulas.nameManager` Name Manager (Defined Names)
|
|
- `formulas.defineName` Define Name (Defined Names)
|
|
- `formulas.useInFormula` Use in Formula (Defined Names)
|
|
- `formulas.createFromSelection` Create from Selection (Defined Names)
|
|
- `formulas.tracePrecedents` Trace Precedents (Formula Auditing)
|
|
- `formulas.traceDependents` Trace Dependents (Formula Auditing)
|
|
- `formulas.removeArrows` Remove Arrows (Formula Auditing)
|
|
- `formulas.showFormulas` Show Formulas (Formula Auditing)
|
|
- `formulas.errorChecking` Error Checking (Formula Auditing)
|
|
- `formulas.evaluateFormula` Evaluate Formula (Formula Auditing)
|
|
- `formulas.watchWindow` Watch Window (Formula Auditing)
|
|
- `formulas.calculationOptions` Calculation Options (Calculation)
|
|
- `formulas.calculateNow` Calculate Now (Calculation)
|
|
- `formulas.calculateSheet` Calculate Sheet (Calculation)
|
|
|
|
## Data (23 / 28, 82%)
|
|
|
|
Implemented:
|
|
|
|
- `data.getData` Get Data (Get & Transform Data)
|
|
- `data.fromTextCsv` From Text/CSV (Get & Transform Data)
|
|
- `data.fromTableRange` From Table/Range (Get & Transform Data)
|
|
- `data.refreshAll` Refresh All (Queries & Connections)
|
|
- `data.queriesConnections` Queries & Connections (Queries & Connections)
|
|
- `data.advancedFilter` Advanced (Sort & Filter)
|
|
- `data.textToColumns` Text to Columns (Data Tools)
|
|
- `data.flashFill` Flash Fill (Data Tools)
|
|
- `data.removeDuplicates` Remove Duplicates (Data Tools)
|
|
- `data.validation` Data Validation (Data Tools)
|
|
- `data.circleInvalid` Circle Invalid Data (Data Tools)
|
|
- `data.consolidate` Consolidate (Data Tools)
|
|
- `data.scenarioManager` Scenario Manager (Forecast)
|
|
- `data.goalSeek` Goal Seek (Forecast)
|
|
- `data.dataTable` Data Table (Forecast)
|
|
- `data.forecastSheet` Forecast Sheet (Forecast)
|
|
- `data.group` Group (Outline)
|
|
- `data.ungroup` Ungroup (Outline)
|
|
- `data.subtotal` Subtotal (Outline)
|
|
- `data.showDetail` Show Detail (Outline)
|
|
- `data.hideDetail` Hide Detail (Outline)
|
|
- `data.solver` Solver (Analysis)
|
|
- `data.analysisToolPak` Data Analysis (Analysis)
|
|
|
|
Missing:
|
|
|
|
- `data.fromWeb` From Web (Get & Transform Data)
|
|
- `data.stocks` Stocks (Data Types)
|
|
- `data.geography` Geography (Data Types)
|
|
- `data.relationships` Relationships (Data Tools)
|
|
- `data.analyzeData` Analyze Data (Analysis)
|
|
|
|
## Review (15 / 18, 83%)
|
|
|
|
Implemented:
|
|
|
|
- `review.spelling` Spelling (Proofing)
|
|
- `review.thesaurus` Thesaurus (Proofing)
|
|
- `review.workbookStatistics` Workbook Statistics (Proofing)
|
|
- `review.checkAccessibility` Check Accessibility (Accessibility)
|
|
- `review.deleteComment` Delete Comment (Comments)
|
|
- `review.previousComment` Previous Comment (Comments)
|
|
- `review.nextComment` Next Comment (Comments)
|
|
- `review.showComments` Show Comments (Comments)
|
|
- `review.newNote` New Note (Notes)
|
|
- `review.showNote` Show/Hide Note (Notes)
|
|
- `review.showAllNotes` Show All Notes (Notes)
|
|
- `review.convertToComments` Convert to Comments (Notes)
|
|
- `review.unprotectSheet` Unprotect Sheet (Protect)
|
|
- `review.protectWorkbook` Protect Workbook (Protect)
|
|
- `review.allowEditRanges` Allow Edit Ranges (Protect)
|
|
|
|
Missing:
|
|
|
|
- `review.smartLookup` Smart Lookup (Insights)
|
|
- `review.translate` Translate (Language)
|
|
- `review.showChanges` Show Changes (Changes)
|
|
|
|
## View (20 / 20, 100%)
|
|
|
|
Implemented:
|
|
|
|
- `view.normal` Normal (Workbook Views)
|
|
- `view.pageBreakPreview` Page Break Preview (Workbook Views)
|
|
- `view.pageLayout` Page Layout (Workbook Views)
|
|
- `view.customViews` Custom Views (Workbook Views)
|
|
- `view.ruler` Ruler (Show)
|
|
- `view.formulaBar` Formula Bar (Show)
|
|
- `view.zoom` Zoom (Zoom)
|
|
- `view.zoom100` 100% (Zoom)
|
|
- `view.zoomToSelection` Zoom to Selection (Zoom)
|
|
- `view.newWindow` New Window (Window)
|
|
- `view.arrangeAll` Arrange All (Window)
|
|
- `view.freezePanes` Freeze Panes (Window)
|
|
- `view.freezeTopRow` Freeze Top Row (Window)
|
|
- `view.freezeFirstColumn` Freeze First Column (Window)
|
|
- `view.unfreezePanes` Unfreeze Panes (Window)
|
|
- `view.split` Split (Window)
|
|
- `view.hideWindow` Hide (Window)
|
|
- `view.unhideWindow` Unhide (Window)
|
|
- `view.switchWindows` Switch Windows (Window)
|
|
- `view.macros` Macros (Macros)
|
|
|
|
## Automate (3 / 3, 100%)
|
|
|
|
Implemented:
|
|
|
|
- `automate.newScript` New Script (Scripting Tools)
|
|
- `automate.allScripts` All Scripts (Scripting Tools)
|
|
- `automate.recordActions` Record Actions (Scripting Tools)
|
|
|
|
## Table Design (13 / 13, 100%)
|
|
|
|
Implemented:
|
|
|
|
- `table.rename` Table Name (Properties)
|
|
- `table.resize` Resize Table (Properties)
|
|
- `table.summarizePivot` Summarize with PivotTable (Tools)
|
|
- `table.removeDuplicates` Remove Duplicates (Tools)
|
|
- `table.convertToRange` Convert to Range (Tools)
|
|
- `table.insertSlicer` Insert Slicer (Tools)
|
|
- `table.headerRow` Header Row (Table Style Options)
|
|
- `table.totalRow` Total Row (Table Style Options)
|
|
- `table.bandedRows` Banded Rows (Table Style Options)
|
|
- `table.firstColumn` First Column (Table Style Options)
|
|
- `table.lastColumn` Last Column (Table Style Options)
|
|
- `table.bandedColumns` Banded Columns (Table Style Options)
|
|
- `table.style` Table Styles (Table Styles)
|
|
|
|
## Chart Design (8 / 8, 100%)
|
|
|
|
Implemented:
|
|
|
|
- `chart.addElement` Add Chart Element (Chart Layouts)
|
|
- `chart.quickLayout` Quick Layout (Chart Layouts)
|
|
- `chart.changeColors` Change Colors (Chart Styles)
|
|
- `chart.set` Chart Styles (Chart Styles)
|
|
- `chart.switchRowColumn` Switch Row/Column (Data)
|
|
- `chart.selectData` Select Data (Data)
|
|
- `chart.changeType` Change Chart Type (Type)
|
|
- `chart.move` Move Chart (Location)
|
|
|
|
## Format (3 / 3, 100%)
|
|
|
|
Implemented:
|
|
|
|
- `chart.formatSelection` Format Selection (Current Selection)
|
|
- `chart.shapeFill` Shape Fill (Shape Styles)
|
|
- `chart.shapeOutline` Shape Outline (Shape Styles)
|
|
|
|
## PivotTable Analyze (13 / 13, 100%)
|
|
|
|
Implemented:
|
|
|
|
- `pivot.fieldList` Field List (Show)
|
|
- `pivot.refresh` Refresh (Data)
|
|
- `pivot.changeSource` Change Data Source (Data)
|
|
- `pivot.calculatedField` Fields, Items & Sets (Calculations)
|
|
- `pivot.addField` Add Field (Fields)
|
|
- `pivot.removeField` Remove Field (Fields)
|
|
- `pivot.moveField` Move Field (Fields)
|
|
- `pivot.valueSettings` Value Field Settings (Active Field)
|
|
- `pivot.filter` Filter (Filter)
|
|
- `pivot.sort` Sort (Sort)
|
|
- `pivot.group` Group Field (Group)
|
|
- `pivot.collapse` Collapse Field (Active Field)
|
|
- `pivot.delete` Clear All (Actions)
|
|
|
|
## PivotTable Design (4 / 4, 100%)
|
|
|
|
Implemented:
|
|
|
|
- `pivot.grandTotals` Grand Totals (Layout)
|
|
- `pivot.subtotals` Subtotals (Layout)
|
|
- `pivot.reportLayout` Report Layout (Layout)
|
|
- `pivot.style` PivotTable Styles (PivotTable Styles)
|