Страницы: 1
RSS
Подсчет нескольких одинаковых значений в одной ячейки excel
 
Проблема в том что нужно посчитать эти значения в диапазоне  
=СЧЁТЕСЛИ - не подходит т.к. считает кол.во ячеек где содержится хотя бы одно значение, то есть если в одной ячейки будет [12.02.2010, 12.02.2010] то значение будет 1
 
Function countdata(rRange As Range)  
Dim s, x  
s = Split(rRange, ", ")  
For Each x In s  
   countdata = countdata + 1  
Next  
End Function
 
а с помощью формул, возмжно
 
=(ДЛСТР(A1)+2)/12  
 
Учитывая, что в А1 только в таком формате записаны даты, как у Вас в примере
 
Общая идея такая:  
=(ДЛСТР(A1)-ДЛСТР(ПОДСТАВИТЬ(A1;"12.02.2010";"")))/ДЛСТР("12.02.2010")  
или, если длина фрагмента известна заранее:  
=(ДЛСТР(A1)-ДЛСТР(ПОДСТАВИТЬ(A1;"12.02.2010";"")))/10
 
не понимаю как подойдет (ДЛСТР(A1)+2)/12 для подсчета, но в любом случае с помощью этой формулы не получится посчитать диапазон, а мне нужно считать по 6 фамилиям на 1500 строк, за каждый день.
 
{quote}{login=Денис}{date=30.05.2011 03:28}{thema=}{post}не понимаю как подойдет (ДЛСТР(A1)+2)/12 для подсчета, но в любом случае с помощью этой формулы не получится посчитать диапазон, а мне нужно считать по 6 фамилиям на 1500 строк, за каждый день.{/post}{/quote}  
 
У Вас вопрос стоял - посчитать в пределах одной ячейки:  
12.02.2010 - содержит 10 символов + 1 символ "," + 1 символ " "  
моя формула показывает количество диапазонов в ячейке, содержащие 10 символов. С учетом того, что последняя дата не содержит "," и " ", поэтому стоит "+2".  
Про 6 фамилий и 1500 строк не было сказано ни слова.
 
извиняюсь, за введение в заблуждение.  
В чем цель, есть диапазон строк, в ячейках которых есть значения [дата, Фамилия,]
мне нужно посчитать кол.во дат для каждой фамилии, в примере желтым выделены проблемные ячейки, которые считаются у меня не корректно.
 
вы продолжаете издеваться? :)  
в каком примере???
фрилансер Excel, VBA - контакты в профиле
"Совершенствоваться не обязательно. Выживание — дело добровольное." Э.Деминг
 
Да и вообще, с примером что есть/что хочу как-то быстрее получается.
 
Денис, если вариант Казанского Вам не подойдет, выложите пример, согласно Правилам, а то мы долго будем тут эту тему мучить :)
 
вот пример
 
вариант, с разделением столбца по запятым не подходит, т.к. файл начинает виснуть
 
s = "18.03.2011, Иванов"  
x = UBound(Split(Cells(4, 1), s))
 
я ведь так и не поняла, что в примере означают Дата1, Дата2, что там считается... Как вариант, количество подсчета в ячейке по Дате и Фамилии. Может, поможет...
 
&
 
kim - проверил, вашу формулу, все отлично, спасибо огромное.  
есть проблемы со скоростью подсчета, но это решаемо.
Страницы: 1
Читают тему
Наверх