#04. Поиск данных в массиве | VBA Excel

Поділитися
Вставка
  • Опубліковано 25 чер 2024
  • В сегодняшнем уроке разберем задачу по поиску данных одного массива в другом средствами VBA. Пример для разбора прислала участница нашей группы в Телеграм. Задача интересная и наверняка в работе с VBA вы будете часто сталкиваться с подобным.
    Таймкоды:
    00:00​ Вступление
    00:17 Описание задачи
    00:59 Решение через конструкцию If Like (обращение к ячейкам)
    01:39 Решение через конструкцию If Like (обращение к массиву)
    02:14 Решение через функцию InStr (без учета регистра)
    02:45 Решение через функцию InStr (с учетом регистра)
    02:58 Решение через регулярное выражение (RegExp)
    03:53 Решение через SQL запрос в базе данных
    Скачать файл с макросом можно по ссылке: drive.google.com/file/d/1AYA0...
    Предложить новую тему для видео: vdsr7ufo2in.typeform.com/to/H...
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Важно! В рамках данного курса действует группа в Телеграм, в которой я в режиме онлайн отвечаю на все вопросы участников, помогаю по ходу обучения.
    Вход в группу свободный, по ссылке приглашению (указана ниже). Ограничений по количеству участников на данный момент нет.
    В указанной группе задавайте абсолютно любые вопросы, в рамках нашего обучения. Посмотрели видео, попробовали повторить. Получилось - отлично. Что-то не вышло, пишите вопрос в группу. Всем отвечу и помогу.
    Ссылка на группу в Telegram: t.me/joinchat/IlKGPSggsptOHUvH
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    ★ Дорогие друзья! Если вам нравится, что я делаю, и вы хотите поддержать проект материально, ссылка: www.donationalerts.com/r/exce...
    ★ Давайте дружить:
    Facebook | / excelstore.pro
    Вконтакте | ExcelStore
    Telegramm | t.me/ExcelStore
    #ОбучениеVBA #КурсыVBA #УрокиVBA #КухарьМаксим

КОМЕНТАРІ • 18

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

    Если будут какие-либо вопросы по обучению VBA, под видео ссылка на нашу группу в Телеграм, где вы всегда можете задать интересующие вас вопросы.
    Также вам, возможно будут интересны другие мои видео:
    1. Обучение Microsoft Excel: ua-cam.com/play/PLKl9v2TQvIkqKXhv__c0eWNuW-g3AZyGa.html
    2. Базовый курс по SQL: ua-cam.com/play/PLKl9v2TQvIkq4i_hZwZ1PmobxJSkIGwBf.html

  • @AcademyCL
    @AcademyCL 3 роки тому +3

    Очень нужная и хорошая тема. Спасибо Вам за проделанную работу

  • @evgeniyatim3976
    @evgeniyatim3976 3 роки тому +3

    Огромное спасибо, очень полезное видео!!!

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

      Евгения, спасибо за отзыв!

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

    Спасибо!

  • @databaseaccessvba7809
    @databaseaccessvba7809 3 роки тому +1

    Отличный пример. Спасибо. Вопрос такой: есть 2 файла Excel, в эти файлы были импортированы данные из CSV (который был зашифрован - банковские данные клиентов ) . ВПР не работает ни через VBA ни стандартной функцией. То есть две абсолютно одинаковые записи функция не определяет после взятия ее в переменные одинакового типа.... не сталкивались с таким?

    • @ExcelStore
      @ExcelStore  3 роки тому +1

      Спасибо за отзыв и вопрос.
      А что значит "файл зашифрован"? Если он открывается в обычном блокноте (не в бинарном виде), то значит содержимое файла отображается. Наверное, вы имеете в виду, что содержимое закодировано каким-то образом. Но даже если какая-то запись будет закодирована, то другая (отличная от нее запись) в закодированном виде должна все-равно отличаться. ВПР и VBA должны увидеть разницу.
      Иными словами, я пока не сталкивался с ситуацией, о которой вы говорите. Было бы интересно взглянуть на хотя бы один пример таких двух одинаковых записей, но которые для ВПР и VBA разные. Скорее всего, отличие есть, но не очевидно.

  • @user-tq7yz9xb8g
    @user-tq7yz9xb8g 3 роки тому +1

    Вопрос от чайника - ReDim в данном случае для чего.....конечно скорость работы примера 1 и 2 очень отличается...на больших объемах это будет заметно. Спасибо.

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

      Redim - один из способов создания нового массива.
      Еще есть Redim Preserve - это уже для переопределения существующего массива с сохранением имеющихся в нем данных.

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

    Максим по вопросам макросов SAP + vba тоже ориентируетесь ? Ariba?

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

      Павел, с SAP я работал только в SAP BusinessObjects. Что видел, VBA там никак не применим, там исключительно SQL был. По сути, витрина данных. И к находящимся там таблицам (точнее, их источникам), в большинстве случаев, можно было законектиться из обычной визуальной среды SQL (SQL Devoloper и др).
      Но как понимаю, в других редакциях SAP (тот же Ariba и тп) есть API для работы из того же VBA и других языков. Но с этими редакциями SAP я не работал, поэтому не могу комментировать.

  • @user-tq7yz9xb8g
    @user-tq7yz9xb8g 3 роки тому

    Но второй вариант для понимания сложнее. ..

    • @ExcelStore
      @ExcelStore  3 роки тому +1

      Так то да. Но все зависит от существующей подготовки человека и правильности применения.

    • @user-tq7yz9xb8g
      @user-tq7yz9xb8g 3 роки тому

      @@ExcelStore для такого чайника как я второй вариант должен немного "полежать")

    • @ExcelStore
      @ExcelStore  3 роки тому +1

      @@user-tq7yz9xb8g Это у всех так. Тут суть в том, чтобы была некоторая насмотренность различных вариантов решения. Я тоже все не запоминаю сразу. Но когда решаю какую-то нетривиальную задачу, мозг подсказывает, что у этой задачи есть и альтернативные варианты решения. И хоть я их не помню дословно, уже есть ориентир, в какую сторону копать. А дальше уже гугл в помощь или полезные форумы/группы для уточнения. Важна именно насмотренность, дальше уже дело техники. И конечно чем больше практики, тем лучше.