Выбор уникальных (неповторяющихся) значений из списка в виде текстовой строки

Function JustUnique(ByVal txt As String, Optional ByVal Separator As String = ", ") As String
    ' Принимает в качестве параметра обрабатываемую строку txt,
    ' и разделитель Separator элементов строки txt.
    ' Возвращает строку txt, но уже не содержающую повторяющихся значений
    Dim coll As New Collection: On Error Resume Next
    For Each v In Split(txt, Separator)
        coll.Add CStr(v), CStr(v)
    Next v
    For Each v In coll: JustUnique = JustUnique & Separator & v: Next v
    JustUnique = Mid(JustUnique, Len(Separator) + 1)
End Function
 
 
Sub ПримерИспользования_ВыборУникальныхЗначенийИзСписка()
    txt = "58, 28, 32, 60, 28, 58, 14"
    new_txt = JustUnique(txt) ' возвращает строку "58, 28, 32, 60, 14"
    Debug.Print "Уникальные значения: " & new_txt, vbInformation, "Исходная строка: " & txt
End Sub

Комментарии

Отправить комментарий

Содержание этого поля является приватным и не предназначено к показу.
CAPTCHA
Подтвердите, пожалуйста, что вы - человек:
  _        _          _           ____    _ 
| |_ / \ __| | _ __ | __ ) / |
| __| / _ \ / _` | | '_ \ | _ \ | |
| |_ / ___ \ | (_| | | | | | | |_) | | |
\__| /_/ \_\ \__,_| |_| |_| |____/ |_|
Введите код, изображенный в стиле ASCII-арт.

Не получается применить макрос? Не удаётся изменить код под свои нужды?

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