将Excel列的一部分与另一列匹配并粘贴一组值

时间:2018-01-17 01:45:58

标签: excel excel-formula multiple-columns

我在Excel电子表格中有一个长列,我希望与同一张表中的另一个长列匹配。

列看起来像:

enter image description here

我想创建一个脚本,允许我检查 A到F ,使用 B复制并粘贴 F,G,H到B,C,D如果A和F匹配看起来像:

enter image description here

问题在于A和F通常不完全匹配;只有大部分的单词 - 正如你可以看到" metal corp&公司" vs" metal corp"。 有什么方法可以通过脚本来做到这一点吗?我知道我可以看到它们是否完全匹配使用类似=NOT(ISERROR(MATCH(A2,$F$2:$F$5, 0)))等的东西....或者在引号中明确说明名称,但没有任何东西只能匹配到另一个条目的一部分。

另外,如果找到匹配,有没有办法自动粘贴F,G,H?

1 个答案:

答案 0 :(得分:0)

好的,如果需要,您可以执行vlookup并使用复制/粘贴值中断公式。你可能不需要这样做。

因此,您需要考虑如何使vlookup工作。 vlookup可以获取一个值并在数组中搜索它,并在找到它的数组的该行中返回相应的值。如果你要求右边的下列值,如果我们可以得到一个匹配的值,这应该很好。之后只需重复相同的公式,每列返回+1(F,G,H)。

所以,你的问题是让匹配工作,因为你认为大多数时候这些值不匹配100%但是接近。不知怎的,你需要让它们匹配。通过手动分配别名对齐的查找表。例如在另一张纸上,在A栏中,有“metal corp& company”,在b栏中,有“metal corp”或通过公式来建立匹配。根据行数,手动操作可能比公式少得多。一个公式可以解决别名在某种程度上一直是错误的。如果它是随机的,则公式将不起作用。

我会尝试简单的东西= vlookup(value,array,column,TRUE)。真值将返回近似匹配而非精确匹配。

参见示例屏幕截图,唯一的公式在B列中。“hi”足够接近“high”,然后从e列返回“there”。

enter image description here