2014-10-22 2 views
0

Я почти нашел то, что хотел:Удалить последовательные дубликаты из текста в ячейке

How do I remove duplicate values in a cell seperated with a /?

... но вслед за этим мне интересно, если он может быть изменен, чтобы удалить только последовательные дубликаты, а не все дубликаты. (Я имею в виду ответ Кев шпиц).

EG, 1-1-3-4-2-2-2-2-5-2-1 бы в настоящее время возвращают 1/3/4/2/5

, но я хочу его вернуться 1-3-4-2-5-2-1

Я посмотрел на изменения определенной функции пользователя, но, честно говоря, что это слишком много для моей ограниченной способности :)

признательна за любую помощь.

Благодаря

ответ

1

Рассмотрим:

Public Function LJays(sIn As String) As String 
    ary = Split(sIn, "-") 
    LJays = ary(0) 
    For i = LBound(ary) + 1 To UBound(ary) 
     If ary(i) <> ary(i - 1) Then 
      LJays = LJays & "-" & ary(i) 
     End If 
    Next i 
End Function 
+0

Это своего рода работает, но он игнорирует последовательный дубликата в начале и в конце строки. Похоже, что строка не начинается и заканчивается символом «-». Я могу обойти это, добавив дополнительный «-» в начале и в конце предыдущего этапа того, что я делаю. Если есть простое редактирование, чтобы сделать это как часть funtion, а затем удалить дополнительные функции в конце функции? – LJays99

+0

@ LJays99 Позвольте мне запустить несколько тестов. –

+0

Я обновил «-» до «-», потому что формат, который я использую, включает пробелы .......... Затем я добавил эту строку в начало: sIn = "-" & sIn & "-" Это избаловлено от всех последовательных дубликатов, но я все еще придерживаюсь дополнительных - в начале и в конце. Возможно, теперь это будет google, но если вы знаете, что у вас на голове. Ура! – LJays99