Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
excel上OFFSET()函数中的ADDRESS()_Excel - Fatal编程技术网

excel上OFFSET()函数中的ADDRESS()

excel上OFFSET()函数中的ADDRESS(),excel,Excel,我有以下返回最大列值位置的函数: =ADDRESS(MATCH(MAX(B1:B18),B1:B18,0),1) 当我向函数中添加偏移量以获取另一列中的相应值时,它不起作用 =OFFSET(ADDRESS(MATCH(MAX(B1:B18),B1:B18,0),1),1,0) 还有别的办法吗 我有两个列: Time (hours) Cp (ug/L) 0 0 0.1 26.282 0.25 46.532 0.5

我有以下返回最大列值位置的函数:

=ADDRESS(MATCH(MAX(B1:B18),B1:B18,0),1)
当我向函数中添加偏移量以获取另一列中的相应值时,它不起作用

=OFFSET(ADDRESS(MATCH(MAX(B1:B18),B1:B18,0),1),1,0)
还有别的办法吗

我有两个列:

Time (hours)    Cp (ug/L)
0               0
0.1             26.282
0.25            46.532
0.5             57.046
0.75            57.411
1               55.028

我想在Cp列中找到最大值,并返回该最大值处的时间。在本例中,最大值为57.411,时间为0.75。。该字段应返回0.75

它不起作用,因为
ADDRESS()
返回一个字符串,
OFFSET()
需要一个引用,但有一个更简单的方法:

=OFFSET(A1, MATCH(MAX(B1:B18), B1:B18, 0) - 1, 0)

试试非挥发性溶液

=INDEX(A1:A18, MATCH(MAX(B1:B18), B1:B18, 0))
'or,
=INDEX(A:A, MATCH(MAX(B:B),B:B, 0))
fwiw,我还没有发现很多情况下volatileñ不能被非volatile替换



当整个工作簿中的任何内容发生更改时,而不仅仅是当影响其结果的内容发生更改时,Volatile函数都会重新计算。volatile函数的示例有、、和。和工作表函数的某些子函数也会使它们变得不稳定。

您可以将
地址()
包装在
间接()中


这将把它从文本格式转换为参考格式。

@shnisaka-行与列混淆,请立即尝试完美!它正在工作!只需要在等式的最后一位做-1而不是0。@shnisaka-为什么-1?您正在访问[n]吗?如果是这样,就用A1替换B1。代码返回57.411。我想让它返回0.75。@shnisaka-这就是为什么我要使用A1。。。我现在编辑了答案,我同意,如果范围是预定义的,那就更好了。但在无限范围内(A:A等)它是如何工作的?对性能、记忆或其他方面有影响吗?没有明显的性能影响。函数对在的范围内截断计算。很高兴知道。谢谢