问题描述
我有一个带有很多INDIRECT()函数的工作表,用于从同一工作簿中的其他工作表中提取数据.像
I have a sheet with lots of INDIRECT() functions to pull data from other sheets in the same workbook. Something like
=INDIRECT(SheetName&"!A1")
我已经意识到INDIRECT()是一个易失函数,因此每次在任何工作簿中进行任何更改时,它都会重新计算.这使Excel非常慢,尤其是在打开多个工作簿时.
I've realized that INDIRECT() is a volatile function so it re-calculates every time when any change is made in any workbook. This makes Excel very slow especially when there are several workbooks opened.
还有其他函数可以替换INDIRECT()来使用动态工作表名称进行查找吗?
Is there any other function that could replace INDIRECT() to lookup with dynamic sheet name?
推荐答案
Lisa:您可以将CHOOSE与查找表结合使用来替换INDIRECT.请参阅我对这个问题的回答中的屏幕截图:带有单元格引用的Excel Vlookup
Lisa: You can use CHOOSE in association with a lookup table to replace INDIRECT. See the screenshot in my answer to this question: Excel Vlookup with cell reference
此外,请在 Excel表与普通数据中查看我的答案我在这里提供了一些有关如何解决电子表格运行缓慢的根本原因的信息.
Also, check out my answer at Excel tables vs plain data where I give a bit of info on how you can address the root cause of your slow spreadsheet.
这篇关于Excel:替换INDIRECT()以动态引用工作表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!