Имеется у меня столбец с датами и столбец с электронными адресами. Электронные адреса соответствуют покупателям. Одни покупатели совершали покупки исключительно в рамках одного месяца, другие - делали повторные покупки на протяжении разных месяцев.
Мне необходимо каким-то образом обозначить тех покупателей, которые делали повторные покупки только в разные месяцы, чтобы я мог их легко узнать, когда отсортирую таблицу по дате. Следует учитывать и тот факт, что одинаковое количество покупок совершали разные покупатели. Т.е. СЧЁТЕСЛИ не сильно помог.
Заранее спасибо за ваши советы и рекомендации.
Здравствуйте,
Имеется у меня столбец с датами и столбец с электронными адресами. Электронные адреса соответствуют покупателям. Одни покупатели совершали покупки исключительно в рамках одного месяца, другие - делали повторные покупки на протяжении разных месяцев.
Мне необходимо каким-то образом обозначить тех покупателей, которые делали повторные покупки только в разные месяцы, чтобы я мог их легко узнать, когда отсортирую таблицу по дате. Следует учитывать и тот факт, что одинаковое количество покупок совершали разные покупатели. Т.е. СЧЁТЕСЛИ не сильно помог.
Заранее спасибо за ваши советы и рекомендации.MeatBug
как вариант - вывести таких покупателей в отдельный список. для разукраски потом можно будет использовать, например, ВПР
макрос: [vba]
Код
Sub t() Dim sCon$, rs As Object, cn As Object, sSQL$ Set cn = CreateObject("ADODB.Connection") Select Case CLng(Split(Application.Version, ".")(0)) Case Is < 12 sCon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & ThisWorkbook.FullName _ & ";Extended Properties=""Excel 8.0;HDR=No;IMEX=1"";" Case Is >= 12 sCon = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & ThisWorkbook.FullName _ & ";Extended Properties=""Excel 12.0;HDR=No;IMEX=1"";" End Select ' thnx R Dmitry sSQL = "SELECT F2 FROM [Лист1$A:C] GROUP BY F2, year(F1), month(F1) HAVING Count(F2)=1" cn.Open sCon: [e1].CopyFromRecordset cn.Execute(sSQL) End Sub
[/vba]
как вариант - вывести таких покупателей в отдельный список. для разукраски потом можно будет использовать, например, ВПР
макрос: [vba]
Код
Sub t() Dim sCon$, rs As Object, cn As Object, sSQL$ Set cn = CreateObject("ADODB.Connection") Select Case CLng(Split(Application.Version, ".")(0)) Case Is < 12 sCon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & ThisWorkbook.FullName _ & ";Extended Properties=""Excel 8.0;HDR=No;IMEX=1"";" Case Is >= 12 sCon = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & ThisWorkbook.FullName _ & ";Extended Properties=""Excel 12.0;HDR=No;IMEX=1"";" End Select ' thnx R Dmitry sSQL = "SELECT F2 FROM [Лист1$A:C] GROUP BY F2, year(F1), month(F1) HAVING Count(F2)=1" cn.Open sCon: [e1].CopyFromRecordset cn.Execute(sSQL) End Sub
Провозился долгое время, но никак не могу воспроизвести ваш итог таблицы. В приложении те варианты, к которым прихожу я. Укажите, что я упустил. Буду благодарен за помощь.
Цитата (Serge_007)
Сводной таблицей
Провозился долгое время, но никак не могу воспроизвести ваш итог таблицы. В приложении те варианты, к которым прихожу я. Укажите, что я упустил. Буду благодарен за помощь.MeatBug