Реестр печати с расчетом
И так, доброго всем времени суток)
Данный пост начну с небольшого рассказа.
Я думаю как и многие из нас, я занимаюсь печатью на заказ, правда пока в небольших объемах, но всё же столкнулся с некоторой проблемой. Я старался всегда вести какой-то учет заказов, чтобы собирать статистику, видеть средний расход в месяц по пластику ну и в целом просто подводить итоги в конце месяца.
Завел себе таблицу Excel, в которую набросал примитивных колонок: вид пластика, вес изделия, время печати и т.д. Хоть объем информации небольшой, но всё же эти 5-6 колонок нужно было после каждого заказа заполнять вручную.
Позже наткнулся на очень полезную штуку от Chuzhastik (ссылка на статью кликабельна), а именно калькулятор для расчета стоимости печати, в котором довольно приятно реализован метод.
Попользовавшись довольно долго данным калькулятором, и снова устав вписывать информацию о печати, я в какой-то момент забросил ведение статистики. Но в очередной раз разговаривая с заказчиком, я понял что всё таки надо реализовать некое подобие реестра, в который по одному щелчку мышки будет попадать вся информация по печати. Начиная от цены катушки заканчивая стоимостью за партию.
Покопавшись денек в интернете, нашел способ в котором можно написать код для Excel на Visual Basic. С языками программирования я немного знаком, но конкретно с этим товарищем я никогда не общался) Потратив еще немного времени и разобравшись в синтаксисе языка, конечно не без помощи "ведосеков", я смог реализовать задумку.
А теперь по порядку)
За основу была взята вышеупомянутая таблица с готовым расчетом стоимости печати.
Первоначально выглядела она так
Сразу небольшая оговорочка, алгоритм расчета я не трогал от слова совсем, и не стал придумывать колесо т.к. всё реализовано довольно хорошо и меня полностью устраивает.
Так вот, взяв за основу всю эту красоту, я переделав таблицу немного под себя, получилось следующее:
Понимаю что очень уж всё пёстро, но поверьте, в дальнейшем это пригодится, и вы поймёте почему)
Идем дальше. Приведя всё в тот вид который был у меня в голове, и уже примерно понимая какой вид и какие столбцы будут в реестре я подумал, что будет полезно указывать еще и вид пластика, который использую, чтобы видеть картину по расходу не общего количества пластика, а каждого отдельно. Но как все знают, лень двигатель прогресса, хотя я больше за оптимизацию всего процесса)) Поэтому сделал возможность выбрать необходимый пластик сразу в ячейке из выпадающего списка. Вкратце объясню.
Создаем нужный нам список, к примеру такой:
Тыкаем на ячейку в которой будет выпадающий список.
Далее в графе данные, нам нужна "проверка данных".
Тыкаем на нее и вы новом окне "тип данных" выбираем "список".
И в "источник" выделяем нужные нам ячейки БЕЗ шапки.
Нажимаем Enter и следом Ok.
Вуаля, и готово. Лично у меня получилось так:
Дальше необходимо включить вкладку разработчика. Параметры - Настройки ленты - Разработчик.
Далее начинается самое интересное.
Для начала я начал готовить шапку самого реестра. Получилось следующим образом:
Теперь для адекватной работы, всему этому безобразию необходимо присвоить форматирование таблицы. Из выпадающего списка можно выбрать любую понравившуюся или создать самому) Я в свою очередь не стал заморачиваться и взял готовый формат.
Теперь для каждой ячейки, которую мы будем копировать из листа расчета в лист реестра необходимо задать тег, с помощью которого мы сможем в коде правильно обратиться к ячейке.
ДАНГЕРУС!!! ОБЯЗАТЕЛЬНО ПОСЛЕ ВВОДА НУЖНО НАЖАТЬ ENTER, ИНАЧЕ НЕ СОХРАНИТСЯ.
ТАК ЖЕ НЕОБХОДИМО СРАЗУ СОХРАНИТЬ ДОКУМЕНТ В ФОРМАТЕ ПРИВЕДЕННОМ НИЖЕ.
Вроде предупредил)После того как мы присвоили всем нужным нам ячейкам имена, начинаем кодить.
Переходим во вкладку разработчика и открываем Visual Basic
После чего нам нужно подключить во вкладке Insert, Module
Переименовываем имеющиеся листы, обязательно английскими буквами.
И пишем код. Сразу хочу оговориться, что код, который приведен ниже сделан именно под мою таблицу. Красным я подчеркну переменные которые могут меняться.
Знаю, знаю, таких переменных очень много и дабы не мусолить эту довольно большую тему, просто приложу ссылку на видео, в котором поясняется как и что этот код делает. Тут.
Сразу предупрежу, что мой код отличается от приведенного в видео. Т.к. там объясняется написание кода только для одного листа, следовательно код другой.Все ребята шаристые, разберетесь)
После того как написали код, сохраняем всё это богатство в вышеупомянутом формате еще раз.
Приступаем к финальной стадии. Созданию великой КНОПКИ.
Для этого возвращаемся во вкладку разработчика и тыкаем вставить - кнопка(самая первая в выпадающем окне):
Выбираем необходимые размеры и после того как опустим мышку вылезет такое окно:
Выбираем наш модуль "AddDateToTable" и тыкаем Ок, появляется активная кнопка, переименовываем ее как нам нужно, перетаскиваем куда нужно и пользуемся)
Конечный результат:
А теперь самое волнительное. Жмем кнопку "Внести в реестр"
Дабы не было сомнение что автонумерация и прочие функции работают исправно, от фонаря взял рандомные значения и залил их в реестр, так что всё огонь)
И о боги, оно работает, оно живое)
В конечном итоге что мы с этого имеем?
Автонумерацию строк, автоматический ввод всех данных в реестр одним кликом, оптимизацию сбора статистики и бесценный опыт.
Хочу сказать, что такой длиннопост я написал для людей, которым может не понравится мой вариант исполнения, которые увидев задумку, захотят сделать подобное под себя. Я мог бы просто залить пару скринов и сказать "пользуйтесь", но так же не интересно))
Надеюсь я смог немного заинтересовать вас своей мыслью, друзья сопечатники)
Ну а теперь, изрядно помучав вас, я выкладываю свою вариацию в Excel файле.
Пользуйтесь на здоровье и добро пожаловать в комментарии для обсуждения сей статьи)
Всем удачи и хорошей адгезии ;)
Еще больше интересных статей
Ультрабюджетный лазерный СО2 станок своими руками
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
Свистки? Свистки! ЧО ОПЯТЬ?!
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
Тут с полгода форсилась тема прикола по заработку на печати свистков. В...
Вечер пятницы в стиле Кэпа
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
Комментарии и вопросы
Возможно качество зависит от а...
а кингрун с виндовз совместим....
статья не для читателей. для п...
Здравствуйте, ситуация такая:...
Печатаю последовательной печат...
Здравствуйте!Столкнулся со стр...
Всем привет, хотел попросить ч...