用于在excel中的列之间查找和替换文本的vba代码

时间:2015-01-19 13:54:16

标签: excel-vba vba excel

我花了一天时间尝试学习vba代码并为同一个例子搜索其他问题,但一直无法解决这个问题,所以非常感谢帮助。

我已经研究过如何在vlookup中执行此操作,但仅限于一行。

来自kutools的代码是我能找到的最接近的代码,几乎可以满足我的需要,但只能读取我的范围内的单个数字(最多可达700),因此i返回的值是值字符串的倍数。这需要修改为仅搜索和替换特定值。 http://www.extendoffice.com/documents/excel/1873-excel-find-and-replace-multiple-values-at-once.html

我有3列:A有一个随机的数字列表,很多重复; B有一个参考编号列表,与C中的地名相关。

A | B | C 1 | 1 |墨尔本 1 | 2 |阿德莱德 1 | 3 |悉尼 2 | 7 |奥克兰 2 | | 3 | | 7 | |

通过首先在B列中找到匹配的数字,代码应该导致A列中的数字被C列中的地名替换。注意:列B和C中的行数少于A列中的行数。

有成千上万,所以我需要一个代码才能做到这一点。

提前致谢。

1 个答案:

答案 0 :(得分:0)

首先,我将VLOOKUP数据放入新列中,以便保留原始数据集,但这里是您应该寻找的代码:

=VLOOKUP(A1,$B$1:$C$4,2,FALSE)

这里是VLOOKUP的语法:

=VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup])

现在每个部分。 lookup_valu e是您用作搜索引用的内容,这将是您对columb A的信息。 table_array 是静态引用的位置查找此值,然后查找要显示的结果值,因此在工作表中,您将完成所有columb B和C. col_index_num 表示您选择的table_array的索引之前,因为城市名称在此表的第二列,我们将2. range_lookup 表示您是否想要完全匹配。我们这样做,所以我们将其设置为true。然后,您可以在列中复制此值,以便为每个人提供结果。

这应该是你正在寻找的。我甚至创建了一个测试表来试用它。将来我建议发布您已尝试过的代码。