将一个单元格的第一个实例重命名为一个,但接下来又重命名?

时间:2012-03-20 16:28:09

标签: excel vba

我正在尝试编写一个宏,根据它们的值重命名列中的单元格。单元格是交替的,因此我想重命名的单元格有多个实例。

例如......

数据列可能如下(之前和之后):

Before           After
---------        ---------
Product 1        Product 1
Product 2        Product 1
Product 3        Cat
Product 3        Dog
Product 4        Product 4

因为宏是根据它们的值重命名单元格内容。我不能简单地写一个宏来重命名产品3 => Cat因为它会将两个细胞重命名为Cat。我希望第二个产品3是狗。

然后我的产品列表又重复了4到5次,因此这个宏需要在另一个循环中运行。

1 个答案:

答案 0 :(得分:1)

您可以使用工作表函数实现此目的。在相邻列中填写此公式,或覆盖产品名称列表。

=CHOOSE(MOD(ROW()-1,5)+1,"This","That","Else 1","Else 2","Something")

这假设您的列表从第1行开始并以相同的方式重复。例如,如果您的列表在第2行中开始,则只需调整公式中新名称参数的顺序。例如,如果列表在第2行中开始,请改为使用以下内容:

=CHOOSE(MOD(ROW()-1,5)+1,"Something","This","That","Else 1","Else 2")