You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It seems excelize evaluates all function arguments before calling a function, which doesn't work well with LOOKUP (HLOOKUP, VLOOKUP ...) functions, especially if table range is large.
E.g. =VLOOKUP(C1, A:XFD, 2) will try to calculate all the cells in the table, instead of just lazily calculating cells in A column, and then calculate a corresponding single cell from B column.
It should be instant to calculate this cell value.
Go version
1.23.4
Excelize version or commit ID
2.9.0
Environment
Windows 11
Validations
Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
The provided reproduction is a minimal reproducible example of the bug.
The text was updated successfully, but these errors were encountered:
xaoctech
changed the title
Eager evaluation of function argument doesn't work with LOOKUP functions
Eager evaluation of function arguments doesn't work with LOOKUP functions
Jan 21, 2025
Description
It seems excelize evaluates all function arguments before calling a function, which doesn't work well with LOOKUP (HLOOKUP, VLOOKUP ...) functions, especially if table range is large.
E.g.
=VLOOKUP(C1, A:XFD, 2)
will try to calculate all the cells in the table, instead of just lazily calculating cells in A column, and then calculate a corresponding single cell from B column.Steps to reproduce the issue
Add this simple table to the project
vlookup.xlsx
Run this code
Describe the results you received
It takes ages to calculate this field value.
Describe the results you expected
It should be instant to calculate this cell value.
Go version
1.23.4
Excelize version or commit ID
2.9.0
Environment
Validations
The text was updated successfully, but these errors were encountered: