У меня есть некоторые файлы excel, каждый из которых содержит 3 строки данных за каждый отдельный день года (дата (A1), AVG (B1), CV (C1)) для последнего 30 лет. Теперь я хочу разделить их на год, когда они были собраны (например, последние 20 лет, последние 10 лет, в прошлом году или даже последние 6 месяцев). Поэтому я использую несколько строк, чтобы поместить дату начала и окончания в две ячейки и отфильтровать данные (ячейки) между этими двумя датами.Извлечение данных между датами и пастой на новый лист
Dim lngStart As Long, lngEnd As Long
lngStart = Range("E1").Value 'assume this is the start date
lngEnd = Range("E2").Value 'assume this is the end date
Range("A2:A4000").AutoFilter field:=1, _
Criteria1:=">=" & lngStart, _
Operator:=xlAnd, _
Criteria2:="<=" & lngEnd
`
И добавить несколько строк, чтобы скопировать эти данные на новый лист.
`Range("A1:C1").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Sheets.Add After:=Sheets(Sheets.Count)
ActiveSheet.Paste´
Но, у меня есть несколько из этих рабочих листов, и я должен сделать отдельный лист для последнего 30years, 20Y, 10Y 5г, 3y, 1Y, 6months, 3х и 1month в каждом листе. Интересно, есть ли шанс получить макрос для извлечения всех этих периодов времени (например, последние 10y в соответствии с последней датой в базе данных) и скопировать их на новый лист, обозначенный его собственным конкретным периодом времени (например, «10y») однажды!? Таким образом, результатом будет 9 новых помеченных листов, каждый из которых имеет три столбца (дата (A1), AVG (B1), CV (C1))! Извините за длинный рассказ :)
Большое спасибо за вашу помощь и с нетерпением ждем от вас ребята!
Бест, Neos116
Спасибо большое! Мне нравится ваше решение :) – Neos116
Я буду работать над этим и позволит вам. Благодаря! – Neos116
Не стесняйтесь спрашивать меня о каких-либо деталях, если вы застряли с ним :) – GSazheniuk