Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/подсчет повторяющихся по порядку значений в массиве - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
подсчет повторяющихся по порядку значений в массиве
jam80 Дата: Среда, 07.08.2013, 23:42 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 9
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Добрый вечер!

суть проблемы: есть 2 текстовых столбца (в каждом из них ячейка может принимать одно из 50 разных значений) и 1 числовой столбец (в нем ячейка может принимать одно из 3 значений: 1 или 2, или 3)

как в столбце-результате сделать так, чтобы если текстовому значению из столбца В соответствовало одно и то же значение в столбце А, такие случаи считались и суммировались до тех пор, пока не появится другое числовое значение в столбце А? при этом, значение в столбце B может быть и в столбце С, тоесть проверку одинаковости ячеек столбца А нужно делать по 2 столбцам: В и С.

понимаю, что путано объясняю. лучше на примере:
нужно найти D4 - ячейка В5 содержит "MIL", считаем, сколько одинаковых ячеек (1) было до В5 в столбцах В и С со значением "MIL": А6, А7, А28 и А29 - всего 4, т.к. А30 уже 2.
или нужно найти D14 - ячейка В14 содержит "LA", считаем, сколько одинаковых ячеек (1) было до В14: А28, А29 - всего 2, т.к. А30 уже 2.

если нужно уточнить задачу - пожалуйста, спрашивайте. заранее спасибо!
К сообщению приложен файл: example.xlsx (13.9 Kb)
 
Ответить
СообщениеДобрый вечер!

суть проблемы: есть 2 текстовых столбца (в каждом из них ячейка может принимать одно из 50 разных значений) и 1 числовой столбец (в нем ячейка может принимать одно из 3 значений: 1 или 2, или 3)

как в столбце-результате сделать так, чтобы если текстовому значению из столбца В соответствовало одно и то же значение в столбце А, такие случаи считались и суммировались до тех пор, пока не появится другое числовое значение в столбце А? при этом, значение в столбце B может быть и в столбце С, тоесть проверку одинаковости ячеек столбца А нужно делать по 2 столбцам: В и С.

понимаю, что путано объясняю. лучше на примере:
нужно найти D4 - ячейка В5 содержит "MIL", считаем, сколько одинаковых ячеек (1) было до В5 в столбцах В и С со значением "MIL": А6, А7, А28 и А29 - всего 4, т.к. А30 уже 2.
или нужно найти D14 - ячейка В14 содержит "LA", считаем, сколько одинаковых ячеек (1) было до В14: А28, А29 - всего 2, т.к. А30 уже 2.

если нужно уточнить задачу - пожалуйста, спрашивайте. заранее спасибо!

Автор - jam80
Дата добавления - 07.08.2013 в 23:42
_Boroda_ Дата: Четверг, 08.08.2013, 00:50 | Сообщение № 2
Группа: Админы
Ранг: Местный житель
Сообщений: 16772
Репутация: 6551 ±
Замечаний: ±

2003; 2007; 2010; 2013 RUS
Спрашиваю
1. Сдается мне, что в примере 1 нам нужно искать не Д4, а Д5, правильно?
2. Почему в примере 2 мы считаем в столбце А единички, если в А14 двойка?
3. Почему в Д3 единица, если А3=2, а А4=3 (при том, что В3=В4)?
В общем, сделал, как понял общую объяснялку и как догадался по примерам
Код
=СУММ(ЕЧИСЛО(ПОИСК(B3;B4:B$151&" "&C4:C$151))*(СТРОКА(A4:A$151)<МИН(ЕСЛИ(ЕЧИСЛО(ПОИСК(B3;B4:B$151&" "&C4:C$151))*(A4:A$151<>A3);СТРОКА(A4:A$151)))))

Формула массива, вводить одновременным нажатием Контрл Шифт Ентер
К сообщению приложен файл: example_11.xlsx (22.9 Kb)


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеСпрашиваю
1. Сдается мне, что в примере 1 нам нужно искать не Д4, а Д5, правильно?
2. Почему в примере 2 мы считаем в столбце А единички, если в А14 двойка?
3. Почему в Д3 единица, если А3=2, а А4=3 (при том, что В3=В4)?
В общем, сделал, как понял общую объяснялку и как догадался по примерам
Код
=СУММ(ЕЧИСЛО(ПОИСК(B3;B4:B$151&" "&C4:C$151))*(СТРОКА(A4:A$151)<МИН(ЕСЛИ(ЕЧИСЛО(ПОИСК(B3;B4:B$151&" "&C4:C$151))*(A4:A$151<>A3);СТРОКА(A4:A$151)))))

Формула массива, вводить одновременным нажатием Контрл Шифт Ентер

Автор - _Boroda_
Дата добавления - 08.08.2013 в 00:50
jam80 Дата: Четверг, 08.08.2013, 08:47 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 9
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
1. да, верно. D5
2. потому что мы ищем повторяющиеся числовые значения, которым соответствуют текстовые значения из столбца В14: в ячейке стоит LA
- смотрим, какие числа соответствовали этому значению ранее: ячейке С28 соответствовала 1 и ячейке С29 - тоже. подряд 2 еденицы (значению в С30 соответствует уже 2) - значит в ячейке D14 должно стоять 2.
3. в D3 1, т.к. предыдущее значение для SD в ячейке D4 - 3, оно подряд встречается всего 1 раз (т.к. перед этим SD в ячейке В59 - 2).

пока что формула не подходит, 0 не должно быть.
 
Ответить
Сообщение1. да, верно. D5
2. потому что мы ищем повторяющиеся числовые значения, которым соответствуют текстовые значения из столбца В14: в ячейке стоит LA
- смотрим, какие числа соответствовали этому значению ранее: ячейке С28 соответствовала 1 и ячейке С29 - тоже. подряд 2 еденицы (значению в С30 соответствует уже 2) - значит в ячейке D14 должно стоять 2.
3. в D3 1, т.к. предыдущее значение для SD в ячейке D4 - 3, оно подряд встречается всего 1 раз (т.к. перед этим SD в ячейке В59 - 2).

пока что формула не подходит, 0 не должно быть.

Автор - jam80
Дата добавления - 08.08.2013 в 08:47
_Boroda_ Дата: Четверг, 08.08.2013, 10:35 | Сообщение № 4
Группа: Админы
Ранг: Местный житель
Сообщений: 16772
Репутация: 6551 ±
Замечаний: ±

2003; 2007; 2010; 2013 RUS
понимаю, что путано объясняю

Это таки да. Есть такое.
Смотрите так
Код
=ЕСЛИОШИБКА(СУММ(ЕЧИСЛО(ПОИСК(B2;B3:B$151&" "&C3:C$151))*(СТРОКА(A3:A$151)<МИН(151;ЕСЛИ(ЕЧИСЛО(ПОИСК(B2;B3:B$151&" "&C3:C$151))*(A3:A$151<>ИНДЕКС(A3:A$151;ПОИСКПОЗ("*"&B2&"*";B3:B$151&" "&C3:C$151;)));СТРОКА(A3:A$151)))));0)

Но я все равно не понимаю, почему Д4=1.
Прочие другие красные в файле.
К сообщению приложен файл: example_11_1.xlsx (25.2 Kb)


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
Сообщение
понимаю, что путано объясняю

Это таки да. Есть такое.
Смотрите так
Код
=ЕСЛИОШИБКА(СУММ(ЕЧИСЛО(ПОИСК(B2;B3:B$151&" "&C3:C$151))*(СТРОКА(A3:A$151)<МИН(151;ЕСЛИ(ЕЧИСЛО(ПОИСК(B2;B3:B$151&" "&C3:C$151))*(A3:A$151<>ИНДЕКС(A3:A$151;ПОИСКПОЗ("*"&B2&"*";B3:B$151&" "&C3:C$151;)));СТРОКА(A3:A$151)))));0)

Но я все равно не понимаю, почему Д4=1.
Прочие другие красные в файле.

Автор - _Boroda_
Дата добавления - 08.08.2013 в 10:35
jam80 Дата: Четверг, 08.08.2013, 16:40 | Сообщение № 5
Группа: Пользователи
Ранг: Прохожий
Сообщений: 9
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Прошу прощения, Вы правы, в D4 должно стоять 2, т.к. для SD предыдущие числа - две единицы в ячейках А6 и А7 (в А8 уже тройка)..
И в остальных случаях тоже формула выдает правильный результат.
Когда вручную проставляешь, трудновато определить.

Пытаюсь разобраться в смысловой нагрузке формулы по частям:
ЕЧИСЛО(ПОИСК(B2;B3:B$151&" "&C3:C$151))

здесь понятно - если встречается значение B2 в диапазоне B3:B$151 или C3:C$151, то такие случаи отсеиваются и используются в процессе вычисления, другие варианты отбрасываются.

СТРОКА(A3:A$151)<МИН(151;ЕСЛИ(ЕЧИСЛО(ПОИСК(B2;B3:B$151&" "&C3:C$151)

не совсем ясно. видимо, ищется наименьшая строка, в которой значение B2 встречается в столбце В или С?

A3:A$151<>ИНДЕКС(A3:A$151;ПОИСКПОЗ("*"&B2&"*";B3:B$151&" "&C3:C$151;)));СТРОКА(A3:A$151))

сложнее всего с этим куском. во-первых, почему "*"&B2&"*", а не просто B2? во-вторых, почему ПОИСКПОЗ, а не ПОИСК, как в первой части? и как вообще расшифровать этот кусок? %)
 
Ответить
СообщениеПрошу прощения, Вы правы, в D4 должно стоять 2, т.к. для SD предыдущие числа - две единицы в ячейках А6 и А7 (в А8 уже тройка)..
И в остальных случаях тоже формула выдает правильный результат.
Когда вручную проставляешь, трудновато определить.

Пытаюсь разобраться в смысловой нагрузке формулы по частям:
ЕЧИСЛО(ПОИСК(B2;B3:B$151&" "&C3:C$151))

здесь понятно - если встречается значение B2 в диапазоне B3:B$151 или C3:C$151, то такие случаи отсеиваются и используются в процессе вычисления, другие варианты отбрасываются.

СТРОКА(A3:A$151)<МИН(151;ЕСЛИ(ЕЧИСЛО(ПОИСК(B2;B3:B$151&" "&C3:C$151)

не совсем ясно. видимо, ищется наименьшая строка, в которой значение B2 встречается в столбце В или С?

A3:A$151<>ИНДЕКС(A3:A$151;ПОИСКПОЗ("*"&B2&"*";B3:B$151&" "&C3:C$151;)));СТРОКА(A3:A$151))

сложнее всего с этим куском. во-первых, почему "*"&B2&"*", а не просто B2? во-вторых, почему ПОИСКПОЗ, а не ПОИСК, как в первой части? и как вообще расшифровать этот кусок? %)

Автор - jam80
Дата добавления - 08.08.2013 в 16:40
jam80 Дата: Суббота, 10.08.2013, 11:11 | Сообщение № 6
Группа: Пользователи
Ранг: Прохожий
Сообщений: 9
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
добрый день!
аналогичная задача но теперь появился второй числовой столбец D.

попытался изменить формулу самостоятельно (диапазон ячеек F1:O7).
в ячейке H2 должно быть 7, но не знаю, как правильно составить формулу.
К сообщению приложен файл: example_11_3.xlsx (24.4 Kb)
 
Ответить
Сообщениедобрый день!
аналогичная задача но теперь появился второй числовой столбец D.

попытался изменить формулу самостоятельно (диапазон ячеек F1:O7).
в ячейке H2 должно быть 7, но не знаю, как правильно составить формулу.

Автор - jam80
Дата добавления - 10.08.2013 в 11:11
jam80 Дата: Понедельник, 12.08.2013, 00:13 | Сообщение № 7
Группа: Пользователи
Ранг: Прохожий
Сообщений: 9
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
кажется, нашел решение! hands
К сообщению приложен файл: example_11_4.xlsx (24.7 Kb)
 
Ответить
Сообщениекажется, нашел решение! hands

Автор - jam80
Дата добавления - 12.08.2013 в 00:13
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2025 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!