VBA: Collection для отбора уникальных значений (Серия VBA 37)

Поділитися
Вставка
  • Опубліковано 4 жов 2024
  • Привет! В этом видео мы рассмотрим, как применять коллекции VBA для отбора уникальных значений. Это видео является практическим примером и продолжением предыдущего видео об операторе On Error. Поэтому представляемый метод и базируется на команде On Error Resume Next.
    Кроме того, в этом видео мы также вспомним и поупражняемся в задавании нужного диапазона ячеек (посредством определения посложней непустой ячейки столбца) и прохода по нему с помощью цикла For Each.
    Приятного просмотра! 😊
    Хочешь поддержать мой канал? Это можно сделать с помощью функции «Спонсорство»:
    / @bilyalkhassenov

КОМЕНТАРІ • 22

  • @Евгений-10.11
    @Евгений-10.11 3 роки тому +9

    Браво, Билял! Реально актуально, ёмко, идеально выверено и преподнесено!!! Спасибо за урок! Вижу, что коллег интересуют все больше вопросы работы с «умными таблицами»: и действительно, на просторах интернета эти таблицы только восхваляются, в основном; но найти порой конкретное решение по манипуляциям с ними в решении разных задач - это проблема! У Вас есть замечательные видео об этих умных таблицах, но было бы просто супер, если бы Вы более глубоко коснулись трюков по решению разных задач: это - как предложение!) Спасибо заранее, буду ждать с нетерпением.

  • @СергійСтахнюк-ъ8е
    @СергійСтахнюк-ъ8е 3 роки тому +5

    Очень полезные уроки по VBA. Спасибо Билял!

  • @limpopos8125
    @limpopos8125 3 роки тому +5

    Класс 👍 как всегда коротко и понятно

  • @Stas_Gutsal
    @Stas_Gutsal 3 роки тому +7

    да действительно, очень крутое видео просто бомба :)
    Вроде 9 минут, не так уж и много, но даже в таком видео есть пара крутых приёмов.

  • @Stas_Gutsal
    @Stas_Gutsal 3 роки тому +6

    ух ты круто, новое видео по VBA.
    Большое спасибо Билял. Ставлю лайк сразу не глядя, так как знаю что видео будет точно крутым и интересным.

  • @SamSambl4
    @SamSambl4 3 роки тому +5

    Спасибо за труд!

  • @МаксимГладков-ц6ж
    @МаксимГладков-ц6ж 3 роки тому +1

    Билял, это восхитительно! Вот уж действительно, "Когда знаешь, все просто"

  • @Dmitrii-Zhinzhilov
    @Dmitrii-Zhinzhilov 3 роки тому

    Билял, благодарю! Отличный урок! Всё на высшем уровне, всё понятно, всё получилось повторить.

  • @МаратСычев
    @МаратСычев 3 роки тому +6

    Круто, а можно пожалуйста такие же примеры с использованием умных таблиц)

    • @ildarbusaev
      @ildarbusaev 3 роки тому +2

      Умная таблица это объект listobjects

  • @АндрейВасильевич-й9с

    Спасибо)

  • @ИванМинеев-р6э
    @ИванМинеев-р6э 3 роки тому

    Шикарный урок! Спасибо)

  • @ildarbusaev
    @ildarbusaev 3 роки тому +6

    Когда урок про классы будет?

  • @АльбинаМарина-л5р

    Спасибо за урок, а как вывести список уникальных значений на другой лист в рабочей книге?

  • @konstantink8157
    @konstantink8157 3 роки тому

    Спасибо! Очень круто. Подскажите, как вывести результат на Лист в ячейки?

  • @garagerest
    @garagerest 2 роки тому

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

  • @АлексейСоков-ь8и
    @АлексейСоков-ь8и 3 роки тому

    2021

  • @ИванМанченко-ж3г
    @ИванМанченко-ж3г 2 роки тому

    Пользуйтесь словарями и массивами. Так и быстрее и правильнее.
    Public Sub pUniqueValue()
    Dim lo As ListObject
    Dim iC As Long
    Dim vArray As Variant
    Dim UniqueV As Scripting.Dictionary
    Set lo = ThisWorkbook.Worksheets("ww").ListObjects("tt")
    Set UniqueV = New Scripting.Dictionary
    ReDim vArray(1 To lo.ListColumns(1).DataBodyRange.Count)
    vArray = lo.ListColumns(16).DataBodyRange.Value2
    For iC = 1 To UBound(vArray)
    If Not UniqueV.Exists(vArray(iC, 1)) Then
    UniqueV.Add Key:=vArray(iC, 1), Item:=vArray(iC, 1)
    End If
    Next iC
    ReDim vArray(0 To UniqueV.Count)
    vArray = UniqueV.Items
    For iC = 0 To UBound(vArray)
    ThisWorkbook.Worksheets("ww").Range("M" & iC + 2).Value2 = vArray(iC)
    Next iC
    Set lo = Nothing
    Set UniqueV = Nothing
    Erase vArray
    End Sub

  • @АлексейКозлов-ж7я
    @АлексейКозлов-ж7я 6 місяців тому

    На мой взгляд слишком мудрено. Всегда стараюсь использовать решения более простые