есть список контрагентов из 1с отфильтрован по торговым представителям. хотелось бы получать количество контрагентов по каждому торговому автоматически, а не в ручную выделять строки.. знаю что возможно, но как?.. например: 1.Кривоносенко =117 2.Матусов =127
дополнение к задаче: по хорошему хотелось бы в отдельной книге иметь типо сводной таблицы в которой два столбца 1.ТП 2.Количество контрагентов(которое удачно считает макрос JayBhagavan). незадача в том что из 1с отчет коряво выдаётся и сводная формироваться не хочет... что делать? трясти админа 1с чтоб форму отчёта подкорректировал? или без жертв можно обойтись?...
Sub jjj()
mngr_bcolor = 12648447
cag_fcolor = 8388608
For Each cl In Range(Cells(9, 1), Cells(9, 1).End(xlDown))
cur_bcolor = cl.Interior.Color
cur_fcolor = cl.Font.Color
If cur_bcolor = mngr_bcolor Then
Set mngr_out_cell = Cells(cl.Row, 7)
mngr_out_cell.Value = 0
ElseIf cur_fcolor = cag_fcolor Then
mngr_out_cell.Value = mngr_out_cell.Value + 1
End If
Next cl
End Sub
Формула массива (ФМ) вводится Ctrl+Shift+Enter Memento mori
Через формулу массива =МИН(ЕСЛИ(СТРОКА($C$9:$C$2079)>СТРОКА(D628);ЕСЛИ($C$9:$C$2079=" ";СТРОКА($C$9:$C$2079);"Меньше");"Меньше"))-СТРОКА(D628)-1
ps Обрезал данные, чтобы по размеру файл прошел, поэтому последнее значение некорректно pps А вобще лучше исходные данные иметь в нормальном виде, чтобы без проблем производить вычисления, а не придумывать костыли
по хорошему хотелось бы в отдельной книге иметь типо сводной таблицы в которой два столбца 1.ТП 2.Количество контрагентов(которое удачно считает макрос JayBhagavan). незадача в том что из 1с отчет коряво выдаётся и сводная формироваться не хочет... что делать? трясти админа 1с чтоб форму отчёта подкорректировал? или без жертв можно обойтись?...
Если нет возможности выгружать данные из 1с в удобоваримом виде, я бы создал файл в нем макрос который обрабатывает информацию из 1с и формирует "правильный диапазон" на отдельном листе, а уже этот диапазон служит источником для сводной таблицы. Как то так ...
JayBhagavan, второй столбец акб я сам думаю смогу по аналогии подтянуть, а с 3,4,5 столбцами постараюсь разобраться своими силами используя ваши данные. буду благодарен и признателен
незадача в том что из 1с отчет коряво выдаётся и сводная формироваться не хочет...
Что Вы имеете в виду? Если то, что из 1С не выводится доп. столбец с названием склада - Вам Сергей в Анализ1.xlsx показал, как этот столбец добавить. А с пом.этого доп. столбца Сводная тоже не строится?
Михаил Лебедев, добавляя этот столбец получается что я проделываю ту же работу но другим (более сложным) способом. мне с этого отчёта нужно только количество контрагентов и не важно какие именно(названия). если делать весь отчёт автоматически, чего я хочу, то в общем экономия времени утром порядка 10-20минут, а для утра рабочего дня это большое преимущество. то есть я хочу сказать, что хочется получить готовый результат для отчёта без редактирования файла из 1с.
Sub CntCli()
Dim rList As Range, c, oDic As Object, tName$
Set oDic = CreateObject("scripting.dictionary")
Set rList = ActiveSheet.Range("A8:A" & Cells(Rows.Count, 1).End(xlUp).Row)
For Each c In rList
If c.Font.Color = 0 Then
tName = c.Value
oDic(tName) = 0
ElseIf oDic.exists(tName) Then
oDic(tName) = oDic(tName) + 1
End If
Next
With Workbooks.Add
.Sheets(1).Cells(1, 1).Resize(oDic.Count, 1) = Application.Transpose(oDic.keys)
.Sheets(1).Cells(1, 2).Resize(oDic.Count, 1) = Application.Transpose(oDic.items)
End With
End Sub
доброго времени суток. у меня снова та же проблема. снова поменяли формат вывода данных из 1с. и макрос который верой и правдой прослужил год - не работает ( сам разобраться я не смог. так вот повторюсь. есть список контрагентов поделённых на 17 торговых представителей. нужно макрос заставить считать этих контрагентов для каждого торгового в 7 столбце. старый рабочий макрос прикрепил тоже