Страницы: 1
RSS
подсчет количества уникальных записей
 
Есть ли способ сосчитать количество не повторяющихся записей в ячейках. Во вложении пример файла.  
В первом столбике образовательные учреждения, количество которых надо подсчитать, но проблема в том, что они повторяются и повторы неодинаковы.  
Во втором столбике надо подсчитать количество фамилий, но в некоторых ячейках имеется по две фамилии.
 
Тут только макросо-писцы помогут...
"..Сладку ягоду рвали вместе, горьку ягоду я одна."
 
_____________
 
..или    
=--ЕЧИСЛО(НАЙТИ(",";E8;1))+1,    
а координатора потом прибить НАЙТИ/ЗАМЕНИТЬ
"..Сладку ягоду рвали вместе, горьку ягоду я одна."
 
{quote}{login=}{date=19.11.2010 04:33}{thema=}{post}_____________{/post}{/quote}  
с первым подчсетом согласна - СПАСИБО!!!!  
А вот второй.... посчитались повторы... т.е. в итоге посчитано сколько всего фамилий, а надо посчитать уникальные фамилии.
 
{quote}{login=Владимир}{date=19.11.2010 04:52}{thema=}{post}..или    
=--ЕЧИСЛО(НАЙТИ(",";E8;1))+1,    
а координатора потом прибить НАЙТИ/ЗАМЕНИТЬ{/post}{/quote}  
честно, мне просто хочется ПРИБИТЬ координаторов.....ладно это лирическое отступление....  
 
но последнюю фразу не поняла
 
Меню-Правка-Найти "без координатора" Заменить на "" (ничего не пишете)
"..Сладку ягоду рвали вместе, горьку ягоду я одна."
 
{quote}{login=tashka-tashka}{date=19.11.2010 04:55}{thema=Re: }{post}{quote}{login=}{date=19.11.2010 04:33}{thema=}{post}_____________{/post}{/quote}  
с первым подчсетом согласна - СПАСИБО!!!!  
А вот второй.... посчитались повторы... т.е. в итоге посчитано сколько всего фамилий, а надо посчитать уникальные фамилии.{/post}{/quote}  
да, забыл
 
по поводу подсчета фамилий есть такая формула  
=СУММПРОИЗВ((ДЛСТР(список)-ДЛСТР(ПОДСТАВИТЬ(список;",";""))+1)*(список<>"без координатора")*(СТРОКА(список)-1=ПОИСКПОЗ(список;список;0)))
Редко но метко ...
 
{quote}{login=Владимир}{date=19.11.2010 04:52}{thema=}{post}..или    
=--ЕЧИСЛО(НАЙТИ(",";E8;1))+1,    
а координатора потом прибить НАЙТИ/ЗАМЕНИТЬ{/post}{/quote}  
клево, но для 1 запятой
 
<сосчитать количество человек, при этом считать только уникальные записи>  
Формулы здесь если помогут, то только с доп. столбцами, ведь среди спаренных фамилий тоже могут быть лишние. Лучше макросом.
 
Уникальные должны быть цифры т.е.№ и ФИО  
т.е. такое сочетание  
159Соловьева Светлана Васильевна  
159Вахрушева Татьяна Владимировна  
и т.д.    
считать в такой логике?
Спасибо
 
{quote}{login=vikttur}{date=19.11.2010 05:24}{thema=}{post}Формулы здесь если помогут, то только с доп. столбцами, ведь среди спаренных фамилий тоже могут быть лишние.{/post}{/quote}Делаем вид что tashka-tashka выложила пример по правилам, т.е. "среди спаренных фамилий не могут повторяться те фамилии, которые идут по одной в ячейке", короче бардак только в лицеях 158 и 159 ;)  
Тогда решение с доп. столбцом во вложении.  
Доп. столбец вообще можно убрать, но мне через 5 минут уходить с работы, так что или позже или кто-нибудь ещё.  
 
53 Кб.
 
{quote}{login=}{date=19.11.2010 05:17}{thema=Re: }{post}{quote}{login=Владимир}{date=19.11.2010 04:52}{thema=}{post}..или    
=--ЕЧИСЛО(НАЙТИ(",";E8;1))+1,    
а координатора потом прибить НАЙТИ/ЗАМЕНИТЬ{/post}{/quote}  
клево, но для 1 запятой{/post}{/quote}  
 
..ну и вариантов для тройнухи :) тоже не было. Хотя по барабану, должны всегда получать, те кто присылают...
"..Сладку ягоду рвали вместе, горьку ягоду я одна."
 
{quote}{login=}{date=19.11.2010 09:49}{thema=Re: Re: }{post}{/post}{/quote}  
Из правил:  
"Писать про вещи типа "Будьте вежливы при общении" и прочее - считаю не нужным. Это и так понятно. Откровенных хамов баним молча. Благо такие встречаются ну о-о-очень редко."
 
макросом если надо  
Sub test()  
Dim str$, c$, i&, j&, f&, lr&  
lr = Cells(Rows.Count, 1).End(xlUp).Row - 2  
arr = Range("a2: c" & lr).Value  
Dim fio_C As New Collection  
fio_C.Add Item:=1, Key:="без координатора"  
With New Collection  
On Error Resume Next  
For i = 1 To UBound(arr)  
str = Replace((arr(i, 1)), " ", "")  
   If IsNumeric(Mid(str, InStrRev(str, "№") + 1)) Then  
       .Add Item:=1, Key:=Mid(str, InStrRev(str, "№") + 1)  
   Else  
      For j = 1 To Len(str)  
       If IsNumeric(Mid(str, j, 1)) Then  
           a = Mid(str, j, 1)  
           c = c & a  
       End If  
   Next j  
    .Add Item:=1, Key:=c  
   c = ""  
   End If  
   a = Split(Replace((arr(i, 3)), " ", ""))  
   For f = 0 To UBound(a)  
    fio_C.Add Item:=1, Key:=a(f)  
    Next  
Next  
Debug.Print .Count  
Debug.Print fio_C.Count - 1  
MsgBox "кол-во школ :" & .Count & "  кол-во учителей :" & fio_C.Count - 1  
End With  
End Sub
Спасибо
 
эту строку надо поменять  
fio_C.Add Item:=1, Key:="без координатора"  
на такую  
fio_C.Add Item:=1, Key:="безкоординатора"  
 
так как пробелы все удалил :)  
 
*88113*
Спасибо
 
Простите что не ответила сразу. Большое спасибо всем за помощь. Я и не знала что вызвала такой интерес вопросом.    
 
Огромное спасибо за ваши ответы!!!! Вы мне очень помогли.
Страницы: 1
Читают тему
Наверх