2015-09-30 6 views
1

У меня есть файл Excel с '|' в нем:Значения столбцов для замены значениями другого столбца

20120615|User 1|mak||ToBeReplaced|20150114 
20120615|User 1|mak||ToBeReplaced|20150115 
20120615|User 1|mak||ToBeReplaced|20150116 
20120615|User 2|mak||ToBeReplaced|20150114 
20120615|User 2|mak||ToBeReplaced|20150115 
20120615|User 2|mak||ToBeReplaced|20150116 
20120615|User 3|mak||ToBeReplaced|20150114 
20120615|User 3|mak||ToBeReplaced|20150115 
20120615|User 3|mak||ToBeReplaced|20150116 

У меня также есть таблица Excel, в которой есть имена всех менеджеров. Например:

Manager1 
Manager2 
Manager3 
Manager4 

Теперь я хочу, чтобы имена менеджеров заменялись значениями столбца ToBeReplaced для каждого пользователя. т.е.

20120615|User 1|mak||Manager1|20150114 
20120615|User 1|mak||Manager1|20150115 
20120615|User 1|mak||Manager1|20150116 
20120615|User 2|mak||Manager2|20150114 
20120615|User 2|mak||Manager2|20150115 
20120615|User 2|mak||Manager2|20150116 
20120615|User 3|mak||Manager3|20150114 
20120615|User 3|mak||Manager3|20150115 
20120615|User 3|mak||Manager3|20150116 

Это должно пойти на замену для всех пользователей, использование случай

  1. Если все имена менеджеров заменяются и еще больше пользователей остаются, то он должен снова начать с Manager1.

Может ли кто-нибудь помочь мне с формулой Excel или чем-то, чтобы получить желаемый результат?

ответ

1

Что-то вроде этого?
Sample

Столбец А - это ваши текстовые строки.
В2 формула: User (с пробелами в конце)
С2 формула: =MID(A2,SEARCH(B2,A2)+LEN(B2),SEARCH("|mak|",A2)-SEARCH(B2,A2)-LEN(B2))
D2 формулу: ToBeReplaced
Е2 формула: =CONCATENATE("Manager",C2)
F2 формула: =REPLACE(A2,SEARCH(D2,A2),LEN(D2),E2)

+0

Как о *, то он должен начать снова из Manager1 *. – pnuts

+0

Извините, я не совсем понимаю, что нужно сделать для этого шага, более ясно, есть ли до и после. Означает ли OP что-то вроде '20120615 | Manager1 | mak || ToBeReplaced | 20150114'? – PatricK

+0

Ясно, что я тоже не хочу :), но OP кажется счастливым, так что не возражайте. Обычно у нас больше индейцев, чем вождей, поэтому я ожидал «исчерпать» менеджеров до того, как исчерпал пользователей, т. Е. В какой-то момент возникнет необходимость в распределении большого числа пользователей на менеджер с небольшим числом - перезапустите цикл , – pnuts

0

Split Текст по столбцам с трубой в качестве разделителя, а затем предполагая, что первый user1 в В2 и 0 в E1 вы можете положить в E2:

=IF(B1=B2,E1,"Manager"&RIGHT(E1,1)+1+IF(RIGHT(E1,1)="4",-4)) 

скопировать вниз, чтобы удовлетворить, а затем использовать вывод найдите фактические имена в таблице с другого листа.

Смежные вопросы