Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/26.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中的公式创建具有动态开始和结束的动态范围_Excel_Excel Formula - Fatal编程技术网

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

如何使用Excel中的公式创建具有动态开始和结束的动态范围,excel,excel-formula,Excel,Excel Formula,我有一个很大的数据表(超过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$

我有一个很大的数据表(超过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))
我想找到一种方法来替换“Particle!X$X:X$X”范围,以便根据按升序排序的列中的文本内容自动获取单元格范围

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

有没有办法做到这一点?我已经尝试了索引(单元格(“地址”),的组合,但它给出了一个错误

您可以在这里看到图纸的图像,黄色框内的部分是我希望具有自动范围功能的地方


我在跟踪您的问题并将其与您发布的图像匹配时遇到了一些问题,但是如果我正确理解了您的问题,并且您能够添加一个列(我就是这样做的),您可以执行以下操作:

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

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

=IFERROR(IF(SEARCH"A-20 Midds*",E4)>=1,ROW(E4),""),"")
这个公式的基本意思是,给我找到“A-20 mids*”,如果你找到了,给我它所在的行号,如果你没有找到,就把它留空

一旦您拥有了所有的行号,您就可以使用的变体。因此,在本例中,您可以使用以下代码作为您的范围

INDIRECT("E"&SMALL(F4:F25,1)&":F"&LARGE(F4:F25,1))
“小”函数寻找最小的行号,它应该是文本第一次出现的行号,而“大”的行号应该是文本出现的最后一行,因为您得到的是最大的行号


根据我对这个问题的理解,这也是我最好的猜测。

谢谢你的帮助,我认为这个公式符合我需要的方向。但是,有两件事发生了:我不想硬输入值(我有30个不同的名称),话虽如此,如果我在搜索公式中使用参考单元格,我将不会留下任何空白。我将尝试上传一个数据类型的示例,以明确我的观点。你已经编辑了原始帖子,因此我的答案对未来的用户肯定没有意义。将来,你应该直接进入问题的底部并添加“更新”尽管如此,您仍然有选项。根据您的问题,您必须在某处硬编码值。如果是我,我将在VBA中执行此操作,或创建查找表以创建更动态的范围。抱歉,我在问题下未看到任何更新选项,如果我将其作为注释添加,则不允许我添加图像。