我想计算矩阵行列式(使用函数“ MDETERM
”),其大小取决于以下示例中的值 AL33。我可以使用 Excel 2010 行号/列号方法获取“地址”,也可以使用“单元格(地址...)”技术(如下所述)获取我想放入函数数组中的引用MDETERM
,但显然引用仅被视为文本,当我尝试将其视为公式时:
=MDETERM(CELL("address",INDEX(AJ39:AS39,11-MATCH(AL33,AS39:AS48))):CELL("address",INDEX(AS39:AS48,MATCH(AL33,AS39:AS48))),
我收到消息the formula you typed has an error
“
我使用的是 2010,并尝试使用 EVAL(有和没有 VBA)函数的不同方法,试图使地址结果“可读”,但无济于事。
答案1
这句话,“当你需要将以文本形式组装的引用转换为正确的引用时,请使用 INDIRECT,”从捷星让我对这个INDIRECT
功能有了更清晰的认识——它使得从命令中获得的参考资料CELL("address", [reference])
可用于这个修改后的公式:
=MDETERM(INDIRECT(CELL("address",INDEX(AJ39:AS39,11-MATCH(AL33,AS39:AS48)))):INDIRECT(CELL("address",INDEX(AS39:AS48,MATCH(AL33,AS39:AS48)))))