1 / 1 / 0
Регистрация: 12.01.2021
Сообщений: 28
|
|
1 | |
Копирование макросом данных в отдельный лист по условию12.01.2021, 17:20. Показов 1397. Ответов 11
Добрый день, уважаемые форумчане!
Задача следующая, есть условные данные, в столбце D стоит дата формата; ДД.ММ.ГГГГ (число всегда 01, т е 01.02.2020, 01.05.2019 и тд), Нужно разбить все данные по кварталам, для этого были созданы 4 листа (Квартал1, Квартал2 и т д) Можно ли написать макрос который будет определять к какому кварталу относится та или иная дата, выделять ВСЮ строку, и вставлять её в соответствующий лист, и так до тех пор пока данные не закончатся. Пытался что то написать сам, но не пашет, может кто подскажет. Заранее благодарю! Sub М2() Dim R As Long Range("D : D").Select If R = "2020.01.01" Or R = "2020.02.01" Or R = "2020.03.01" Or R = "2019.01.01" Or R = "2019.02.01" Or R = "2019.03.01" Then Rows(R).Select Selection.Cut Sheets("Квартал1").Select ActiveSheet.Paste End Sub
0
|
12.01.2021, 17:20 | |
Ответы с готовыми решениями:
11
Выбор ячеек по условию, копирование на отдельный лист Выборка со всех листов по условию и копирование на отдельный лист Копирование строк по условию с нескольких листов на отдельный лист Копирование данных на другой лист по условию |
2724 / 1701 / 776
Регистрация: 23.03.2015
Сообщений: 5,388
|
|
12.01.2021, 18:03 | 2 |
Upiter1,
Вариант в лоб: Если данных не очень много ( порядка 10 000) ю 1) Создаете 4 листа с данными ( все одинаковые зля 4-х квариалов) 2) Циклом снизу вверх и условием ( если дата меньше того-то или больше того-то) - то строку удалить И ву фля- файл готов... Необходимо: 1) иметь данные с файлом ( здесь возникает попутный вопрос: данные за один год , или разные ) 2) знать точные границы кварталов...
0
|
1 / 1 / 0
Регистрация: 12.01.2021
Сообщений: 28
|
|
12.01.2021, 18:09 [ТС] | 3 |
а если строк 700 тысяч ?)
Данные за 2 года (то есть 2019 и 2020г)
0
|
2724 / 1701 / 776
Регистрация: 23.03.2015
Сообщений: 5,388
|
|
12.01.2021, 18:15 | 4 |
0
|
1 / 1 / 0
Регистрация: 12.01.2021
Сообщений: 28
|
|
12.01.2021, 18:19 [ТС] | 5 |
1 файл 4 листа, там не важно в каком порядке будут идти года, главное это разбивка по кварталам....
0
|
2724 / 1701 / 776
Регистрация: 23.03.2015
Сообщений: 5,388
|
|
12.01.2021, 18:47 | 6 |
Upiter1,
файлик прикрепите можно строк 200 .
1
|
Динохромный
1375 / 749 / 271
Регистрация: 22.12.2015
Сообщений: 2,341
|
|
12.01.2021, 19:08 | 7 |
Upiter1, Upiter1, из даты можно вытащить месяц с помощью функции месяц(). Форматируете вашу таблицу как умную через ctrl+L, вводите допстолбец с функцией месяц(), фильтруете по месяцам 1-3. Дальше F5 выделить - текущая область, затем снова F5 -выделить -только видимые ячейки, затем копировать и вставить на новый лист. Потом перенастраиваете фильтр для других месяцев. И так для 4х листов.
1
|
1 / 1 / 0
Регистрация: 12.01.2021
Сообщений: 28
|
|
12.01.2021, 21:06 [ТС] | 8 |
вот примерный, реальные данные выложить не могу, иначе сяду далеко и на долго xD
0
|
1 / 1 / 0
Регистрация: 12.01.2021
Сообщений: 28
|
|
12.01.2021, 21:07 [ТС] | 9 |
Dinoxromniy, Это очень хорошая идея, всё проще чем я думал)
Спасибо, попробую!
0
|
2724 / 1701 / 776
Регистрация: 23.03.2015
Сообщений: 5,388
|
||||||
12.01.2021, 23:18 | 11 | |||||
Сообщение было отмечено Upiter1 как решение
Решение
Upiter1,
Попробуйте код для вашего файла... Ради интереса ,увеличил к-во строк за 700 000 и замерил время процесса. Результат на картинке Пы.Сы . Можно было сделать массив массивов и листы еще через цикл заполнять... Но всего 4 листа и 4 массива... - прошу понять и простить.. Кликните здесь для просмотра всего текста
1
|
1 / 1 / 0
Регистрация: 12.01.2021
Сообщений: 28
|
|
13.01.2021, 10:56 [ТС] | 12 |
Я вас люблю, спасибо большое)
Все работает
0
|
13.01.2021, 10:56 | |
13.01.2021, 10:56 | |
Помогаю со студенческими работами здесь
12
Копирование данных на новый лист по условию Макрос на копирование страниц на отдельный лист Копирование результатов поиска по книге на отдельный лист Поиск одинаковых значений в столбце и копирование их на отдельный лист Выделение подсчет и копирование одинаковых значений в отдельный лист Копирование данных с листа 1 на лист 3 при условии в лист 2 Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |