find匹配和复制数据
我有以下(表1):
State Region South Australia Aberfoyle Park New South Wales Abermain South Australia Adelaide
然后(sheet2):
State Region Long Lat Victoria Abermain -12.8167 51.4333 New South Wales Abermain -32.8167 151.4333 South Australia Aberfoyle Park -35.07 138.5885
我需要一个有效的方式来searchsheet1
并匹配sheet2
中的Region
和State
,当发现匹配时,我想创build两个新的列(在sheet1
)从sheet2
中复制匹配的Long
和Lat
,最终的输出应该看起来像(在表1中):
State Region Long Lat South Australia Aberfoyle Park -35.07 138.5885 New South Wales Abermain -32.8167 151.4333
注意; sheet1包含很多更多的数据,这里显示所以一个简单的副本过去将无法正常工作:)
提前致谢。
在Sheet1!C2中,您可以通过多种方式从两列匹配logging中收集正确的数据。 这里有三个场景和例子。
- 基于INDEX函数在查找上使用两列条件。 有数组公式可以做到这一点,但我更喜欢不需要CSE的标准公式。 这些只能select匹配的状态/区域匹配对的第一个匹配项,但是可以进行较小的重写来将多个匹配项返回到多个行中。 C2的例子:
=iferror(index(Sheet2!C$1:C$9999, min(index(row($1:$9999)+((Sheet2!$A$1:$A$9999<>$A2)+(Sheet2!$B$1:$B$9999<>$B2))*1e99, , ))), "")
- 使用一个简单的SUMIFS函数 。 当只有一组匹配的状态/区域返回时,这将是最好的。 多个匹配对会产生不正确的聚合结果。 C2的例子:
=sumifs(Sheet2!C:C, Sheet2!$A:$A, $A2, Sheet2!$B:$B, $B2)
- 如果有多个匹配对,并且您想要从地理平均点返回的平均值,请使用AVERAGEIFS函数 。 当存在多个位置点时这将最好,但是除非只有一组匹配的状态/区域返回,否则不会返回任何一个点。 C2的例子:
=averageifs(Sheet2!C:C, Sheet2!$A:$A, $A2, Sheet2!$B:$B, $B2)
将这些例子放入Sheet1!C2中,然后填充右边的一列来拾取经度,然后填入C2:D2,以便拿起所有的匹配。