How duyhuynhsc/excelsupport works
ExcelSupport is an Excel add-in for navigating workbooks and performing spreadsheet, Japanese-language, AI, and Oracle tasks. Users enter through Excel’s ribbon or task pane, choose a tool, work with a WPF dialog, and apply or inspect results in Excel; the README also documents preview-before-insertion for Oracle queries and evidence/report output for page counting. The graph preserves these major capabilities and a service layer. Some feature wiring is documented rather than visible in the sampled excerpts, so uncertain call relationships are omitted.
Main entry points: Data Data tool dialogs · Japanese Japanese tool dialogs · DesignPageCounterService.cs Design page counter · OracleQuickQueryService.cs Oracle query service
Components 27
Excel Add-in
- Ribbon commands
Ribbon/RibbonController.cs - Add-in events
AddInEvents.cs - Navigation pane
ViewModels/TaskPaneViewModel.cs - Workbook tree UI
Views/Workbook/WorkbookTreeViewControl.xaml.cs
Workbook Tools
- Design page counter
Services/Workbook/DesignPageCounterService.cs - Page counter UI
Views/Workbook/DesignPageCounterDialog.xaml.cs - Sheet snapshots
Services/Workbook/SheetSnapshotService.cs - Workbook comparison
Views/Workbook/WorkbookCompareDialog.xaml.cs
Data Tools
- Data tool dialogs
Views/Data - Batch file conversion
Services/Data/BatchFileConverterService.cs - Advanced filtering
Services/Data/AdvancedFilterService.cs - Table merge
Services/Data/TableMergeService.cs
Japanese Tools
- Japanese tool dialogs
Views/Japanese - Text conversion
Services/Japanese/JapaneseTextConverterService.cs - Katakana validation
Services/Japanese/KatakanaValidatorService.cs - Format presets
Services/Japanese/JapanesePresetFormatService.cs
AI and Oracle
- AI assistant UI
Views/Ai/AiAssistantControl.xaml.cs - Formula diagnosis
Services/Ai/AiFormulaDoctorService.cs - AI translation
Services/Ai/AiTranslationService.cs - AI client
Services/Ai/OpenAiClientService.cs - Oracle query UI
Views/Oracle/OracleQuickQueryDialog.xaml.cs - Oracle query service
Services/Oracle/OracleQuickQueryService.cs - Oracle profiles
Services/Oracle/OracleConnectionManager.cs
Other components
- Excel user
- Microsoft Excel
- AI provider
- Oracle database
Connections 29
- Excel user → Ribbon commands: chooses tools
- Excel user → Navigation pane: navigates sheets
- Ribbon commands → Add-in events: dispatches commands
- Navigation pane → Workbook tree UI: shows navigation
- Workbook tree UI → Microsoft Excel: navigates workbooks
- Page counter UI → Design page counter: starts analysis
- Design page counter → Microsoft Excel: reads and updates
- Design page counter → Excel user: produces report
- Sheet snapshots → Microsoft Excel: captures and restores
- Workbook comparison → Microsoft Excel: compares sheets
- Data tool dialogs → Batch file conversion: converts files
- Batch file conversion → Microsoft Excel: saves workbooks
- Data tool dialogs → Advanced filtering: filters data
- Data tool dialogs → Table merge: merges tables
- Table merge → Microsoft Excel: writes results
- Japanese tool dialogs → Text conversion: converts text
- Text conversion → Microsoft Excel: updates cells
- Japanese tool dialogs → Katakana validation: validates text
- Japanese tool dialogs → Format presets: applies formatting
- Format presets → Microsoft Excel: formats cells
- AI assistant UI → Formula diagnosis: diagnoses formulas
- AI assistant UI → AI translation: translates text
- Formula diagnosis → AI client: requests diagnosis
- AI translation → AI client: requests translation
- AI client → AI provider: sends prompts
- Oracle query UI → Oracle query service: runs query
- Oracle query UI → Oracle profiles: loads profiles
- Oracle query service → Oracle database: queries database
- Oracle query service → Microsoft Excel: inserts results