Урок 6. Поиск артикула (метод Range.Find). Excel+VBA. Система учета Интернет-магазина

ПОЛНЫЙ КУРС и ПРОГРАММА - СКИДКА 60%
Приобрести можно тут - 1excel.ru/magazin-vba-excel
Создание приложения системы учета интернет-магазина - kuzmich24.ru на базе Excel+VBA
В данном уроке осваиваем метод Range.Find поиска артикула с листа Склад и автоматически заполняем поля на форме.
Предыдущие уроки:
Урок 1. Постановка задачи - goo.gl/JvMQAm
Урок 2. Дизайн и оформление - goo.gl/nJGzdw
Урок 3. Модуль Продажи (создаем UserForm) - goo.gl/3XN6H6
Урок 4. Пишем код (Теория+работа с формой) - • Урок 4. Пишем код (Тео...
Урок 5. Заполнение списков ComboBox - goo.gl/6bPDw6
Easy Excel - ПОЛНОЕ и ПОДРОБНОЕ обучение программы Excel для новичков и практиков! Уроки по макросам и VBA
Подписка на канал Easy Excel: / easyexcellesson

Пікірлер: 49

  • @fushibuzuka7463
    @fushibuzuka74632 жыл бұрын

    ничего нет лучше Вас на Ютуб. спасибо.

  • @rdkmake
    @rdkmake5 жыл бұрын

    Очень здорово! Я за пару дней узнал больше чем за года обучения. Очень информативно и доходчиво. Спасибо огромное!

  • @param994
    @param9944 жыл бұрын

    Твои уроки просто шикарны, спасибо, что их делаешь, и большое за это спасибо)

  • @user-bp6zj2xb7h
    @user-bp6zj2xb7h6 жыл бұрын

    Я честно признаться в vba давно лазить стал, но вот до умных таблиц не додумался, все время через массивы работал, вы мне прям глаза открыли, они реально упрощают процессы программирования. Спасибо вам!

  • @user-xp1bh1et3r
    @user-xp1bh1et3r6 жыл бұрын

    А в общем спасибо тебе за твою работу! ( Я работал начальником стройки , теперь судьба повела меня в сметчики, за 3 года работы я только и вижу как народ мучается и гоняет данные из ехель в ехель в ручную, мне это показалось скучным и унизительным занятием. Я при помощи программиста сделал макрос он мне "потрашит" сметы ехель за секунды любое количество. В твоих видео про продажи, много сходств с офисной обработкой данных в ручную , много совпадений и аналогий вижу, некоторые приемы взял на вооружение) спасибо!

  • @Bah1918
    @Bah19185 жыл бұрын

    Очень хорошие уроки!Всё доступно и понятно.Хотелось Ещё уроков по VBA.

  • @user-zm5id6ho6t
    @user-zm5id6ho6t4 жыл бұрын

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

  • @user-eu7zm3nf9j
    @user-eu7zm3nf9j6 жыл бұрын

    Очень круто, спасибо!

  • @Masha6877
    @Masha68774 жыл бұрын

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

  • @kimfrost2714
    @kimfrost27144 жыл бұрын

    уроки отличные, только вот не понятно, а что в заказе всегда присутствует только один вид товара? при такой схеме придется на каждый товар оформлять отдельный заказ. а если клиент заказывает ряд товаров (что чаще всего и бывает), ваша схема уже не подойдет. нужно масштабировать

  • @LAV_rostov
    @LAV_rostov6 жыл бұрын

    Спасибо за видео. А если артикул (т.е. данные) не уникален и может повторяться, то что нужно прописать в код, чтобы сопоставлялся последний введенный артикул. Т.е. то что делает функция ПРОСМОТР в Excel.

  • @vladimirplacinta5255
    @vladimirplacinta52555 жыл бұрын

    Решил использовать в одной маленькой прграмме метод Range.Find , сразу оговорюсь что не програмист , но по роду деятельности постоянно использую Ecxel и что греха таить нравится самому что-то делать полезное, так вот в моей задаче фамилия и имя стоят в отдельных ячейках, я в третий столбец объединил их командой сцепить, но как оказалось Find не работает с такими полями, приходится вручную их объединить

  • @user-fx1eo9it8k

    @user-fx1eo9it8k

    2 жыл бұрын

    Попробуйте преобразовать получившее значение формулы в значение

  • @albertsharger4652
    @albertsharger46526 жыл бұрын

    Здравствуйте. Очень интересная и новая для меня тема. Но есть вопросы... 1. Если это называется Продажи, то планируется ли отсюда в рамках этих уроков построение товарных чеков или накладных. Ведь в одном заказе может быть несколько наименований. Тогда номер заказа не будет биться, если где-то в другом месте формировать эти накладные для заказчиков. 2. Планируете ли Вы в этом курсе формирование отчетной документации для налоговых органов. Имея такие подробные таблицы под рукой, было бы классно не прибегая к 1С готовить на их базе отчетную документацию. Спасибо Вам за проделываемую работу :) Удачи Вам :)))

  • @easyexcellesson

    @easyexcellesson

    6 жыл бұрын

    1. Планируется создание счетов для юр.лиц. Товарные чеки или накладные формируются CMS-системой магазина. В данный момент, как я понял, такой необходимости нет. 2. Тема отчетности для налоговых органов мне пока не знакома, тем более средствами Excel. Честно говоря, даже не знаю возможно ли это. Вроде куда логичней налоговые и прочие отчетности делать в 1С или других специализированных программах. В данном примере мы все-таки делаем упор на систему учета продаж и около продажных процессов (склад, логистика) конкретного интернет-магазина. Спасибо за ваш комментарий!

  • @nikolaynikolayevich4469
    @nikolaynikolayevich44695 жыл бұрын

    Здравствуйте. Возник любопытный вопрос. Чем такая запись Set cell = StoreListObj.ListColumns.item(1).range.Find(Sales.txb_article.value, LookAt:=xlWhole) Sale.txb_desc.Value = cell.cells(1, 2) Лучше этой записи ? number_row = StoreListObj.ListColumns.item(1).range.Find(Sales.txb_article.value, LookAt:=xlWhole).row Sale.txb_desc.Value = cells(number_row, 2).value

  • @user-fz6qx5vw3l
    @user-fz6qx5vw3l3 жыл бұрын

    В данном примере, если артикулы, например имеют вид: 12, 123, 1234 и вы вводите 12345, то поле остается заполненным для последнего артикула 1234. Как этого избежать ?

  • @IsHardynafthardynaft
    @IsHardynafthardynaft4 жыл бұрын

    Хорошо, но в заказе может быть несколько товаров. Артикул не всегда уникальный; бывает, что разные производители выпускают товар с идентичным артикулом например "112 bosch" и "112 Siemens", но за теорию спасибо. Всегда ж можно дописать код. Думаю, ты это уже сделал. Был бы я новичком, то ничего бы не поняв твоих уроках. Спасибо мастер-класс.

  • @user-bp6zj2xb7h
    @user-bp6zj2xb7h6 жыл бұрын

    Уважаемый автор, а как можно сделать автозаполнение умной таблицы? К примеру у меня есть программа автоматического составления таблицы Склад, как данные из нее заносить автоматически в умную таблицу склад_tb, чтоб не руками сидеть, а при обновлении склада умная таблица тоже обновлялась?

  • @easyexcellesson

    @easyexcellesson

    6 жыл бұрын

    Не совсем понял, что вы имеете ввиду. Но обновление таблицы может происходить по какому-то событию. В одном месте меняете, запускаете какую-то процедуру, которая ищет, проверяет и проставляет в другом месте необходимые значения (в умной таблице)

  • @user-fc4rh6oj7g
    @user-fc4rh6oj7g6 жыл бұрын

    А как можно будет сделать, чтобы номер заказа сам автоматически по порядку проставлялся? Чтобы каждый раз не обращаться к таблице заказов посмотреть какой был предыдущий номер.

  • @easyexcellesson

    @easyexcellesson

    6 жыл бұрын

    Да, конечно можно. Подсчитывайте каждый раз кол-во строк в таблице и прибавляйте единицу - будет всегда следующий заказ на единицу больше

  • @freitoka4214
    @freitoka42145 жыл бұрын

    Здравствуйте. Пеересмотрела 6 видео по создании отчетности интернет магазина. Сделала все точечку в точечку, буковка к буквачке. Но на данном моменте возникла проблема. После проверки ввода артикула описание не подгружается

  • @easyexcellesson

    @easyexcellesson

    5 жыл бұрын

    Присылайте файл, посмотрю, где у вас ошибка - info@1excel.ru

  • @user-kd2ol5ru2r
    @user-kd2ol5ru2r4 жыл бұрын

    Здравствуйте! А подскажите пожалуйста. Если я хочу чтобы мне показывал по артиклю не только 1 товар (как здесь-по артиклю он единственный) . А хочу чтобы показывал все что есть с таким артиклем. Я уже поменяла на комбобокс описание товара , чтобы выбирать из предложенного. Но не могу решить проблему: он мне показывает именно первый выпавший, а нужны все((( спасибо большое если увидите вопрос.

  • @easyexcellesson

    @easyexcellesson

    4 жыл бұрын

    Для отбора всех значений надо использовать цикл или массив. Но сама ситуация странная, т.к. артикул - это уникальный идентификатор, он не должен повторяться.

  • @vldmrncorporation3633
    @vldmrncorporation36333 жыл бұрын

    Как вывести информацию в поле Цена, просто выбрав обьект из Группа. Не вижу смысла в артикулах и хотелось бы при выборе товара видеть его цену.

  • @user-xp1bh1et3r
    @user-xp1bh1et3r6 жыл бұрын

    Приветствую Павел! (я конечно не понимаю в ВБА, но интерес большой присутствует ) Вопрос: 1.что если в номере заказа несколько артикулов? 2. я не понял почему менеджер будет искать по артикулам ? (Как это возможно?, почему не подбирать ОТВЕРТКУ по слову, и в водить в колонки описание товара и автоматическому выбору из списка возможных вариантов находящихся на листе склад).

  • @easyexcellesson

    @easyexcellesson

    6 жыл бұрын

    Если несколько артикулов, то они добавляются последовательно. Артикул это уникальный код, который есть у каждого товара и присутствует на карточке товара данного интернет-магазина. По нему наиболее точный и оптимальный поиск. Можно делать поиск и по описанию, но тех же Отверток может быть большое множество, поэтому придется вводить точный поиск наименования товара, а это будет гораздо медленней, нежели ввести цифру артикула. И это ситуация, я повторю, актуальна для данного примера и случая. В другой программе может быть совершенно другой подход и реализация.

  • @leyman94
    @leyman944 жыл бұрын

    Видео которое смотришь сначала и до конца все как надо ! Есть вопрос один , у Вас есть Skype ?

  • @user-zj7yk5ix1w
    @user-zj7yk5ix1w5 жыл бұрын

    Добрый вечер Павел. Хотел бы узнать, а есть команда, которая разграничит товар с одинаковым артикулом? Я по вашим примерам делаю магазин, только под запчасти для себя и на определенный артикул у меня на складе есть запчасть с разными цветами, при вводе артикула заполняется первая по списку. Искать и самому вписывать цвет из всего списан запчастей не реально). В вашей ситуации при нахождение артикула, продав товар, он списывается из ячейки "Наличие на складе", если рассматривать мою ситуацию, то мне нужно прописать и указать в коде, что при совпадении "Артикула" и "Цвета" происходит списание со склада, правильно же? Надеюсь на ваш ответ, заранее спасибо

  • @easyexcellesson

    @easyexcellesson

    5 жыл бұрын

    Мой совет - с цветом не работать. Любое изменение цвета в ячейке приведет к тому, что код корректно работать не будет. Но если вы все-таки хотите, то за заливку ячейки отвечает метод Interior и свойство Color или ColorIndex.

  • @user-zj7yk5ix1w

    @user-zj7yk5ix1w

    5 жыл бұрын

    @@easyexcellesson Я не так выразился. Приведу пример: на складе у меня есть две двери от автомобиля Хендай. Одна белого цвета, вторая черного (цвет указан в отдельном столбце) и при вводе артикула выдается стоящая первая по списку дверь. И вопрос мой заключается в том, что есть ли команда, которая найдя артикул выдаст полный список по нему? Я думал изменить артикул, но нельзя, так как номер запчасти идет по каталогу Хёндай

  • @easyexcellesson

    @easyexcellesson

    5 жыл бұрын

    Вам необходимо сделать связывающий список. При выборе определенной модели в комбобокс должны подтягиваться соответствующие цвета данной модели. В 5-м уроке мы как раз делали заполнение списка комбобоксов

  • @user-zj7yk5ix1w

    @user-zj7yk5ix1w

    5 жыл бұрын

    @@easyexcellesson Спасибо большое

  • @agluchov1986
    @agluchov19866 жыл бұрын

    Когда не находит артикул, не лучше очистку всех txtbox сделать через else в if not is nothing?

  • @easyexcellesson

    @easyexcellesson

    6 жыл бұрын

    Да, согласен, это хорошее решение)

  • @YurriZhook
    @YurriZhook5 жыл бұрын

    Спасибо! Очень круто и доходчиво по работам с умными таблицами. Но при реализации проекта получается менеджер должен держать в голове номера артикулов всех товаров (!). А так же получается один заказ - один товар.

  • @easyexcellesson

    @easyexcellesson

    5 жыл бұрын

    В голове, в данном случае, держать не надо. Менеджер ориентируется на артикулы сайта интернет-магазина. Все оформленные заказы (с артикулами) можно видеть в административной зоне, есть распечатанные экземпляры, по которым и вбиваются товары в учет.

  • @user-lt3hd5xd1f
    @user-lt3hd5xd1f4 жыл бұрын

    Пожалуйста помогите. Все сделал как в уроке но выскакивает ошибка: run time error 9 subscript out of range . Несколько раз перепроверил код,всю голову сломал уже. Ошибку выдает на строчке : Set ShStore = ThisWorkbook.Worksheets("Склад")

  • @easyexcellesson

    @easyexcellesson

    4 жыл бұрын

    Возможно, что ошибка в объявлении переменной. Смотрите туда

  • @user-lt3hd5xd1f

    @user-lt3hd5xd1f

    4 жыл бұрын

    @@easyexcellesson Большое спасибо друг! Обычная ошибка из-за невнимательности. Видимо я слишком активно пытаюсь повторить все уроки) Спасибо за помощь, не думал что даже спустя 2 года публикации уроков,автор будет помогать! Так же спасибо за отличные и понятные уроки!

  • @user-sw3pc9lh6n
    @user-sw3pc9lh6n4 жыл бұрын

    Добрый день! А как выполнить такой поиск, чтобы значения брать из сводной таблицы, а не из простой? Спасибо!

  • @baxaalimov4573

    @baxaalimov4573

    3 жыл бұрын

    kzread.info/dash/bejne/qJdpwa5wiavAZbg.html

  • @frusco1878
    @frusco18786 жыл бұрын

    Добрый день при заполнении ячейки "артикул" ячейка" описание" не заполняется,то есть ничего не происходит,Debug компилирует без ошибок, при запуске Run sub так же ошибок не показывает.что это может быть?Спасибо заранее!

  • @easyexcellesson

    @easyexcellesson

    6 жыл бұрын

    надо смотреть код, так сложно определить. Высылайте файл, если проблема не решилась - info@1excel.ru

  • @frusco1878

    @frusco1878

    6 жыл бұрын

    Проблема не решилась ,я выслал, 3 скрина модуля,и 1 формы.

  • @easyexcellesson

    @easyexcellesson

    6 жыл бұрын

    на почте не вижу высланные вами файлы

  • @frusco1878

    @frusco1878

    6 жыл бұрын

    Я извиняюсь не было интернета,сейчас отправил.

Келесі