Webtool Updates and Releases

Below you fill find an archive of updates over the past few months with bug fix and update information.

Webtool Updates

Version 3.0.239

Feb 21, 2020

Major upgrades:

  • Improved visualization. You get an even better visual representation of your spreadsheets.
  • Multilingual Highlighter and Protection Manager. The Highlighter, which is used to better understand formula patterns on specific worksheets, and the Protection Manager, with which cells and worksheets can be efficiently protected, now both work on every language of Excel. PerfectXL itself will still be in English.
  • Powerful performance. We have invested a lot of time and energy into general improvements in speed, stability, and general performance.


Version 2.24.210

Jan 29, 2019

Major back-end refactoring and clean-up:

  • The storage model has been almost completely rewritten: it is now simpler, more flexible and (much) faster.
  • Analyses now have a correct time-out when they are too complex or use too much memory.
  • The Analysis Worker service is hardened so that even an abusive analysis can not stop the whole process.
  • The Analysis Worker service can now perform up to three analyses simultaneously.
  • The analysis process progress is now reported to the webbrowser via push technology.
  • The majority of inspections were tested again with new test cases and then refined and improved. This results in more accurate findings and better problem descriptions.
  • The analyzer often reported the same problem at different locations, over and over again. Where this was logical and feasible, we grouped those problems into just one risk.
  • We started identifying risks in charts, user-defined names (“named ranges”) and pivot tables.
  • Extracting VBA code from a spreadsheet file is now done with EPPlus instead of a Python script.
  • The login procedure has been rewritten to enable logging in via SSO.
  • All database calls are now asynchronous, so that the web server is not so heavily loaded.
  • We have made preparations to facilitate the deployment of the entire application. There is still a bit more work needed to get this functional.
  • Underlying packages (including GemBox) have been updated to the latest version.
  • A few minor security improvements.
  • Many other refactorings, speed improvements and bug fixes. The code is now in a state where we can add new functions much faster. And they are on their way!


Version 2.20.193

Sep 19, 2018

New inspections/risks:

  • Multi-sheet reference
  • Current sheet reference
  • Auto-calculate is off
  • Improved Approximate Lookup: check if lookup range is unsorted
  • Chart contains external reference
  • Numeric index reference
  • Named range contains error reference
  • Direct reference to a pivot table
  • Unused user-defined name
  • User-defined name has a complex reference
  • Pivot table references external source

Overall performance improvements and smaller bug fixes.

Update to .NET Framework 4.6.2


Version 2.19.187

Jun 14, 2018

VBA characteristics on VBA homepage

Added Security page

  • Added Security Policy
  • Terms & Conditions
  • Sample spreadsheet
  • Security Policy notice beneath Upload-button

Portfolio page Updated

  • Spreadsheet can be uploaded before all spreadsheets are shown (in portfolio page)
  • Only start loading spreadsheets when on the Portfolio page
  • Remove filter of analysis date

Setting changes are reflected in Portfolio

  • Added Queue and processing statuses to frontend. It does now show which files are queued and which files are currently being processed.
  • Set deactivate all analyzed workbooks and set them for reanalyze when settings are changed.

Small fixes:

  • Password protection detection now passes when it could not determine if file was protected.
  • Fix the ‘0’ issue after reanalyze
  • Updated text shown under What’s going on in for several Risks
  • Remove ‘/dashboard’ part from urls in frontend
  • Don’t show risk filters in a category if those risks don’t belong there
  • Empty Cell Reference Inspection now shows more risks


Version 2.17.000

May 24, 2018

  • Info about charts included in characteristics
  • Improved: referenced merged cells risk
  • Fix: location of a circular chain of sheets was not shown
  • Better error messages for failed analysis
  • Fix: analysis date is now properly updated
  • Improved fixed numbers risk detection
  • Fix: you can now create an Excel report of an XLSB file
  • Fix: worksheet labels are working again
  • Improved texts for Hidden Formula Risk
  • Fix: Text Calculation risk is now functioning properly
  • Updated NuGet packages
  • Duplicated formula risk now ignores formulas that do not contain a reference
  • Fix for some reports where the used cell range was not correctly detected


Version 2.16.000

Apr 3, 2018

  • Improved help page
  • Improve fixed numbers inspection: exclude a function that consists only of a fixed number
  • Performance improvements, updated third-party libraries
  • Introduced analysis of XLSB files (experimental)
  • Some security improvements
  • Fixed some small issues that would occur during the installation phase
  • More bug fixes


Version 2.13.000

Feb 13, 2018

  • Improve login, configurable password policy, delay after incorrect login.
  • Keep track of last password change date and time.
  • Update NuGet packages.
  • Fix: sheet name was missing in interrupted formula range explanation.
  • Renamed permission ViewFormulaBreakdownLimitedBreakdown to ViewFormulaBreakdownUnlimitedBreakdown.
  • Bugfix: report generation failed for worksheets that contained the name of another worksheet.
  • Changed: fixed number as the third argument in MID() function is acceptable.


Version 2.10.000

Jan 9, 2018

  • Improved Fixed Numbers Inspection
  • License can now be correctly replaced (fix)
  • Improved storage model.
  • Fixed problems with localization resources
  • Updated NuGet packages to latest versions
  • New package that provides the PDF generation engine newer version


Version 2.06.000

Dec 7, 2017

Frontend change: use one big JSON-object structure get all the info for the analyzed workbook at once. This means that we don’t need any additional requests when switching between tabs. Except for the formula breakdown. All messages for the specific risks come from the new West Wind / DotNetLiquid localization implementation.

Backend change: Use MessagePack for the storage of all information that is needed for the big JSON object. Many other smaller refactorings.


Version 2.05.000

Nov 8, 2017

  • New risks (beta)
  • Fix for file uploads of the ribbon where the filename contains diacritical characters
  • Separate connection string for user databases
  • Drop iQuarc’s sloppy Unit Of Work implementation, introduce DbContextScope.
  • Public key for license verification is now anchored to the application. (Public key in config file can be used for backward compatibility.)
  • Lots of internal renamings and refactorings.
  • Use better component to extract VBA code from spreadsheet file. (OfficeParse instead of OfficeMalScanner.)


Version 1.12

Apr 3, 2017

  • Works in conjuction with the website.
  • Additional risks
  • Permission-based feature access
  • Extended PDFs
  • Support for MS Edge
  • Overall improvements in performance and refactorings