索引匹配而不是使用 vlookup
index match instead using vlookup
我有两个 csv 文件。
第一个 csv
Id Name Price Description
1 X 2 lalala
2 Y 4 nanana
3 Z 6 papapa
还有一个:
Id Description
2 here
6 here
1 here
如果 ID 相同,我想替换第一个 csv 文件的描述,如果不同,则保存第二个 csv 描述中的先前值。我想通过索引匹配功能,最好的方法是什么?
对于此类查询,最好的方法是自己尝试,即使您一开始失败了,但即使您失败或成功了,您也会学到东西,最好的方法是您已经在互联网上搜索索引匹配和尝试在您的数据上实现它。
但是既然你在这里,我会尽量说清楚它是如何完成的
匹配函数查找一个范围内的值以及何时找到;它将 return 它在该范围内的位置(如果我们提供了列范围,则这是相对行号)
索引函数可用于returned位置。我们可以给索引一个范围并为其提供一个位置。它 return 提供范围内此特定位置的值。
诀窍是;在这种情况下,我们将提供一个不同的列,它将 return 来自该列的数据
我将解释一行 (#8),所有其他行都相同
- 匹配结果B8:正在使用match()在A8中查找id
范围 A2 到 A4,当它找到该范围时,它正在 returning 它的
该范围内的位置是 2
- 索引结果C8:正在使用索引函数()检索值
在范围 D2 的位置 2(return 由上一行中的匹配编辑)
到 D4,因为它是 nanana,它会 return 那。
D8 到 D10 是相同的公式,但合并
单元格中的公式如下
B8: =MATCH(A8,$A:$A)
C8: =INDEX($D:$D,B8)
D8: =INDEX($D:$D,MATCH(A8,$A:$A))
我有两个 csv 文件。 第一个 csv
Id Name Price Description
1 X 2 lalala
2 Y 4 nanana
3 Z 6 papapa
还有一个:
Id Description
2 here
6 here
1 here
如果 ID 相同,我想替换第一个 csv 文件的描述,如果不同,则保存第二个 csv 描述中的先前值。我想通过索引匹配功能,最好的方法是什么?
对于此类查询,最好的方法是自己尝试,即使您一开始失败了,但即使您失败或成功了,您也会学到东西,最好的方法是您已经在互联网上搜索索引匹配和尝试在您的数据上实现它。
但是既然你在这里,我会尽量说清楚它是如何完成的
匹配函数查找一个范围内的值以及何时找到;它将 return 它在该范围内的位置(如果我们提供了列范围,则这是相对行号)
索引函数可用于returned位置。我们可以给索引一个范围并为其提供一个位置。它 return 提供范围内此特定位置的值。 诀窍是;在这种情况下,我们将提供一个不同的列,它将 return 来自该列的数据
我将解释一行 (#8),所有其他行都相同
- 匹配结果B8:正在使用match()在A8中查找id 范围 A2 到 A4,当它找到该范围时,它正在 returning 它的 该范围内的位置是 2
- 索引结果C8:正在使用索引函数()检索值 在范围 D2 的位置 2(return 由上一行中的匹配编辑) 到 D4,因为它是 nanana,它会 return 那。
D8 到 D10 是相同的公式,但合并
单元格中的公式如下
B8: =MATCH(A8,$A:$A)
C8: =INDEX($D:$D,B8)
D8: =INDEX($D:$D,MATCH(A8,$A:$A))