Страницы: 1
RSS
Копирование ячеек разных цветов на разные листы через VBA, Макрос для кнопки, по нажатию на которую данные из ячеек с разными цветами разносятся по разным листам.
 
Добрый день. Прошу помочь доделать макрос. Я в программировании 0, но макрос пипец как нужен! Ситуация следующая:
1. В первый лист (Общий) вставляется список людей с тремя типами заливки (жёлтый, зелёный, без заливки)
2. По нажатию на кнопку "Разделить":
а) люди из общего списка без заливки копируются во второй лист (Специалисты)
б) люди из общего списка с зелёной заливкой копируются в третий лист (Практиканты)
в) люди из общего списка с жёлтой заливкой копируются в четвёртый лист (Старшие)
В случае повторного нажатия на кнопку "Разделить" цикл должен повториться, то есть если я впечатал ещё пару тройку человек в общий список, а одного удалил, то после нажатия "разделить" новые разносятся по листам, а удалённые удаляются. Прикладываю файл с таблицей, в которой макрос работает, но только на одно условие (жёлтая заливка)... Добавить ещё 2 условия ну никак не получается... Помогите пожалуйста!
Изменено: Сергей GeSS - 11.07.2020 11:51:18
 
Доброе время суток
Цитата
Сергей GeSS написал:
пипец
Пипецы обычно публикуют тут.. В этой ветке
Цитата
Сергей GeSS написал:
программировании 0,
не приветствуется. Хотя, если вы обладаете кучей времени, то можно и подождать, вдруг кто заинтересуется. Чаще всего заинтересанты бывают в будние дни.
 
Заинтересант нашёлся: у него все дни выходные ))
См. вариант. Про повторный запуск не очень понял и сделал так, что таблицы (столбец С)  на листах 2...4 перезаписываются полностью.
P.S. Порядок этих листов не менять.
 
Offtop
Цитата
Юрий М написал:
Заинтересант нашёлся
Это такая попытка догнать младого? :)
 
Общество охраны животных запрещает использовать труд котов и медведей - даже счетчики обнулили...
За птиц пока (тьфу-тьфу) не взялись. :)  
Изменено: sokol92 - 11.07.2020 14:05:05
Владимир
 
Андрей, по количеству сообщений?
 
Цитата
sokol92 написал:
запрещает использовать труд котов и медведей
А детский труд? :)
 
Цитата
"В театрах, цирках, кино, на телевидении, в концертных организациях, если  такая работа не вредит их здоровью и нравственному развитию"
Насчет нравственного развития, конечно, вопрос :qstn:  На форуме (ближе всего, вероятно, кино, или цирк) разный контингент бывает...
P.S. Медвежьим счетчики восстановили (у них лапа больше), а кошачьим пока нет.
Изменено: sokol92 - 11.07.2020 19:54:00
Владимир
 
Юрий М, Скачал скинутый вами вариант, нажал на кнопку "Распределить" и мой комп завис... Я отправил его в перезагрузку, а сам лёг спать (было уже очень поздно, я просто отрубился)! Сейчас снова запустил файл, зашёл в тело макроса, нажал на Run и он долго висел в статусе running... Не пойму почему так... Затем нажал на кнопку "Распределить" и убедился что процедура выполняется, но почему-то оочень долго! У меня дома Predator Helios 300, а вот на работе комп совсем слабенький боюсь ваще ляжет...

Цитата
Андрей VG написал: [программировании 0] не приветствуется.
Каждому своё, я IT-инженер и педагог доп. образования. От программирования далёк, сталкиваюсь редко.

За слово "пипец" прошу прощения, наболело. Дня 4 уже долбаюсь с этим макросом, собирая инфу по кускам на профильных форумах.
 
Скачал с форума "свой" файл, нажал на кнопку - всё отработало без зависаний за 2-3 секунды..
 
Может имеет смысл применить классику по ускорению процесса?
В самом начале кода(после последнего Dim):
Код
Dim ac&
With Application
    ac = .Calculation
    .EnableEvents = false
    .ScreenUpdating = False
    .Calculation = -4135
End With
ActiveSheet.DisplayPageBreaks = False
в самом конце(перед End Sub)
Код
With Application
    .ScreenUpdating = True
    .EnableEvents = True
    .Calculation = ac
End With
Изменено: Дмитрий(The_Prist) Щербаков - 12.07.2020 19:31:05
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
Огонь! Добавил строки по совету Дмитрий(The_Prist) Щербаков, и стало работать моментально!
Итог: именно то, что мне и было нужно!

Юрий М, вам огромное спасибо! Теперь мне в целом понятно, что написано в вашем макросе, и понятно, что я вообще не в том направлении рыл. Я кстати пытался адаптировать под мою задачу ваш макрос из другой ветки форума, по похожей задаче, но так и не справился...
Всем спасибо за участие!!!
 
Offtop
IT-инженер - инженер информационных технологий
Цитата
Сергей GeSS написал:
От программирования далёк,
То то смотрю на hh зарплаты всё ниже и ниже... Может вам всё же поступать как Задорнов? Тот никогда не называл себя инженер авиаконструктор.
Изменено: Андрей VG - 12.07.2020 20:34:06
 
Цитата
Андрей VG написал: Может вам всё же поступать как Задорнов? Тот никогда не называл себя инженер авиаконструктор.
Может вам перестать давать советы не по-существу, а своё мнение высказать в соответствующих флудилках форума и не разбавлять эту ветку водой?  
 
Ребята, хватит...
Страницы: 1
Наверх