Description
This is:
- [x] a bug report
- [ ] a feature request
- [ ] **not** a usage question (ask them on https://stackoverflow.com/questions/tagged/phpspreadsheet or https://gitter.im/PHPOffice/PhpSpreadsheet)
What is the expected behavior?
DataValidator::isValid calls DataValidator::isValueInList when appropriate. The expected behavior is that true/false will be returned depending on the cell's value vis-à-vis the list..
What is the current behavior?
The method expects the list to be either a comma-delimited string or a cell range. With the merge of PR #4203, the list can also be the result of a spill operator, which is implemented as a call to the ANCHORARRAY function. The validator function will not recognize this, and will therefore always return "true" in this situation. It also appears that a named range might be usable as a validator list, and that also won't be recognized.
What features do you think are causing the issue
- Reader
- Writer
- Styles
- Data Validations
- Formula Calculations
- Charts
- AutoFilter
- Form Elements
Does an issue affect all spreadsheet file formats? If not, which formats are affected?
The spreadsheet will work properly. It is only validation within PhpSpreadsheet itself that might not yield the correct answer.
Which versions of PhpSpreadsheet and PHP are affected?
All.