Rename duplicates with random alphabets in a colum

2019-02-20 22:48发布

问题:

I have a list of 500 names in column A.

1  name1
2  name2
3  name3
4  name1
5  name2
6  name3
7  name1
8  name2
9  name3
..

And i need to add a prefix or suffix alphabets to the duplicates. And I should get

1  name1
2  a.name1
3  b.name1
4  name2
5  a.name2
6  b.name2
7  name3
8  a.name3
9  b.name3
..

And i have selected duplicate values

select column -> conditional formatting -> Highlight Cell Rules -> Duplicate Values

How to rename duplicate values with random alphabets prefix or suffix

回答1:

If you prefer to use a non-random prefix that just contains the next letter, you could do something like this starting in C2:-

=IF(B2=B1,CHAR(96+COUNTIF(B$1:B1,B2))&"."&B1,B2)

I'm assuming that the names are sorted, have a heading and are in column B.


If you didn't want to sort them, this would still work with a modification:-

=IF(COUNTIF(A$1:A1,A2)>0,CHAR(96+COUNTIF(A$1:A1,A2))&"."&A2,A2)

I'm assuming that the unsorted names are in column A, with a header.



回答2:

Without using VBA - you can't edit the cells themselves, except using formatting.

You could however, use a helper column and use a formula on these lines to accomplish this:

=IF(A2=A1,CHOOSE(RANDBETWEEN(1,26),"A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z")&" "&A2,A2)

Bear in mind that because this is random, there is a small chance of two consecutive letters - so you may need to use another formula to check for this and make a small amount of manual tweaks.