繁体   English   中英

如何使用 Excel 中的公式创建具有动态开始和结束的动态范围

[英]How to create dynamic ranges with dynamic start and end using a formula in Excel

我有一个很大的 data.table(超过 34k 行),并且我有几行根据样本名称分组。 每个数据点代表在特定坐标中获取的测量值。 为了链接和评估两个表中的数据,我需要匹配这些表中的坐标。

这是我开始的公式:

=INDEX(Particle!$D$4:$D$25,MATCH(SMALL((ABS(C5-Particle!$A$4:$A$25)^2+ABS(D5-Particle!$B$4:$B$25)^2)^(0.5),1),(ABS(C5-Particle!$A$4:$A$25)^2+ABS(D5-Particle!$B$4:$B$25)^2)^(0.5),0))

我想找到一种方法来替换“粒子:X$XX$X”范围,以根据按升序排序的列中的文本内容自动获取单元格范围。

所以这就是我想要 function 定义我的单元格范围的方法:“找到此列中出现文本“A -20 Midds*”的第一个单元格,并返回单元格地址,然后找到相同的最后一个单元格文本出现,并返回单元格地址。” 我想将这个 function 嵌套在之前显示的另一个中,它评估几个点之间的 2D 距离,但数据库太大,我不想手动定义每个范围。

有没有办法做到这一点? 我已经尝试了 INDEX(CELL("address",... ) 的组合,但它给出了一个错误。

你可以在这里看到工作表的图像,黄色框内的部分是我想要自动范围 function 的地方。

在此处输入图像描述

我在回答您的问题并将其与您发布的图片相匹配时遇到了一些麻烦,但是如果我正确理解您的问题并且您能够添加一列(这就是我会做的),您可以做一些事情像下面这样:

我会在 go 中添加一列搜索文本并获取找到该项目的单元格行。 因此,例如,如果您在“E”列中搜索“A -20 Midds*”,我会在 E&F 之间添加一列,其中包含如下公式。

公式从单元格 F4 中的新列 F 开始:

=IFERROR(IF(SEARCH"A-20 Midds*",E4)>=1,ROW(E4),""),"")

这个公式基本上是说,找到我“A-20 Midds*”,如果你找到它,请给我它所在的行号,如果你找不到它,请将其留空。

获得所有行号后,您可以使用INDIRECT function的变体。 所以在这种情况下,您可以使用以下代码作为您的范围。

INDIRECT("E"&SMALL(F4:F25,1)&":F"&LARGE(F4:F25,1))

“SMALL”function 正在寻找最小的行号,它应该是文本第一次出现的行号,“Large”号也是如此,它应该是文本出现的最后一行,因为你得到的是最大的数字。

同样,这是我根据对问题的理解做出的最佳猜测。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM