powered by simpleCommunicator - 2.0.58     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Подсчет количества повторений значений N в строке после значений M
21 сообщений из 21, страница 1 из 1
Подсчет количества повторений значений N в строке после значений M
    #38408973
jul_white_woman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго времени суток!
Прошу помочь с формулой, очень нужно!

Есть список клиентов с уникальными номерами.
Есть сумма задолженности пред банком с разбивкой по дням (2 месяца) по кредитной карте.

Нужно понять сколько раз в течение месяца клиент "уходил" из банка, т.е. количество раз выхода на "0".
+ понять если не выходил ни разу на "0" в течение месяца.

Во вложении пример в эксель. Я вижу, что здесь очень "живой" форум. Очень прошу помочь знающих людей! Заранее спасибо
...
Рейтинг: 0 / 0
Подсчет количества повторений значений N в строке после значений M
    #38409006
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Почему первая запись - 1? должно быть 0.
...
Рейтинг: 0 / 0
Подсчет количества повторений значений N в строке после значений M
    #38409188
jul_white_woman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina, т.к. клиент 1 раз в течениеи мксяца вышел в "0".
...
Рейтинг: 0 / 0
Подсчет количества повторений значений N в строке после значений M
    #38409211
Михаил Ч.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: vbnet
1.
=СУММПРОИЗВ((A2:J2<>0)*(B2:K2=0))-ИЛИ(СЧЁТЕСЛИ(B2:K2;{0;"<>0"})=0)
...
Рейтинг: 0 / 0
Подсчет количества повторений значений N в строке после значений M
    #38409246
jul_white_woman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Михаил Ч., спасибо огромное! =)

У меня получилось написать часть формулы =СУММПРОИЗВ((A6:J6<>0)*(B6:K6=0)) - считает количество нулевых интервалов.
Могли бы Вы пояснить как она работает?

А вторую часть не получается написать. сочетание Ctrl+Shift+Enter не вставляет фигурные скобки.
...
Рейтинг: 0 / 0
Подсчет количества повторений значений N в строке после значений M
    #38409281
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jul_white_womanAkina, т.к. клиент 1 раз в течениеи мксяца вышел в "0".
ГДЕ???

В месяц клиент 111 вошёл со значением ноль. Но это не учитывается (что мы видим по клиенту 444). В течение месяца у него значение поменялось с ноль на один, да так и осталось до конца месяца. Т.е. НИ ОДНОГО ИЗМЕНЕНИЯ значения, в результате которого значение СТАЛО нулевым, в течение месяца не было.

Или ты думаешь одно, а пишешь другое.
...
Рейтинг: 0 / 0
Подсчет количества повторений значений N в строке после значений M
    #38409508
jul_white_woman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina, да, вы правы 111 и 444 будут иметь одинаковые значения, т.к. и в том и др случае клиент 1 раз вышел на 0
...
Рейтинг: 0 / 0
Подсчет количества повторений значений N в строке после значений M
    #38409545
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вывод - надо просто посчитать количество пар соседних значений, где предыдущее значение не ноль, а следующее ноль.
...
Рейтинг: 0 / 0
Подсчет количества повторений значений N в строке после значений M
    #38409547
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jul_white_womanAkina, да, вы правы 111 и 444 будут иметь одинаковые значения, т.к. и в том и др случае клиент 1 раз вышел на 0Повторяю вопрос. ГДЕ??? он "1 раз вышел на ноль"?
...
Рейтинг: 0 / 0
Подсчет количества повторений значений N в строке после значений M
    #38409778
jul_white_woman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina, я имела ввиду, если написать формулу, то 111 и 444 возвращается 1 раз (во вложении).
...
Рейтинг: 0 / 0
Подсчет количества повторений значений N в строке после значений M
    #38409797
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я не понял... ты хочешь заставить формулу считать как нужно, или ты считаешь, что нужно так, как посчитает формула?

Я обычно заставляю формулу отвечать МОЕЙ логике. А не наоборот.
...
Рейтинг: 0 / 0
Подсчет количества повторений значений N в строке после значений M
    #38411339
jul_white_woman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina, для меня самое важно понять, сколько клиентов в течение месяца выходят в "0" более 1го раза.
В идеале, хотелось бы, чтобы формула счиатала 111 как "1", а 444 как "-1" (например), чтобы понимать клиент вышел вышел в "0" 1 раз т.к. у него вообще не было задолженности в течение месяца или же задолженность была и он вышел в "0" 1 раз.
В предложенном варианте Михаилом Ч. это не учитывается, но дает возможность понять если клиент выходилл в 0 более 1го раза.

Если у Вас есть идеи по поводу формулы, которая учитывала бы идеальный вариант (который описан выше), я буду только рада ее увидеть и очень благодарана Вам.
...
Рейтинг: 0 / 0
Подсчет количества повторений значений N в строке после значений M
    #38411375
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jul_white_womanAkina, для меня самое важно понять, сколько клиентов в течение месяца выходят в "0" более 1го раза.Для Вас важно понять, что именно Вам важно понять. А техническая реализация понимания - это фигня.

PS. Не въезжаю, ну вот как можно решать задачу, если неизвестно, что является её результатом...
...
Рейтинг: 0 / 0
Подсчет количества повторений значений N в строке после значений M
    #38411530
jul_white_woman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina, возможно, я плохо объясняю, но в чем состоит бизнес-задача - ясно.

Есть клиенты, которые пользуются картами. В течение месяца возможно 4 ситуации:
1) клиент не пользовался картой (по каждому дню значение "0")
2) клиент пользовался картой весь месяц (по каждому дню значение "1")
3) клиент воспользовался картой 1 раз за месяц (два интервала "1" и "0")
4) клиент воспользовался картой более 1 раза в месяц (несколько интервалов "1" и "0")

Приоритет по задаче - посчитать долю клиентов п.4 (формула, приведенная в этой теме позволяет это сделать).

Так же в этой формуле учтен и п.2.
А вот п.1 и п.3 по этой формуле равны. Если есть более совершенная формула (а она наверняка есть, но я о ней не знаю, почему собственно и обратилась на этот форум), позволяющая разделить клиентов, не воспользовавшихся картой вообще в течение месяца и воспользовавшихся 1 раз - это было бы не лишним.
...
Рейтинг: 0 / 0
Подсчет количества повторений значений N в строке после значений M
    #38411540
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jul_white_womanЕсть клиенты, которые пользуются картами. В течение месяца возможно 4 ситуации:
Я считаю (из Вашиъх же объяснений), что это неверно.

Во-первых, существует две ситуации на момент начала периода: баланс нулевой, багланс ненулевой.
Во-вторых, существует событие в течение периода: погашение ненулевого баланса такое, что баланс становится нулевым.

Вам, как я понимаю, надо посчитать количество событий. Однако Вы упорно не желаете учитывать РАЗНЫЕ начальные ситуации.

jul_white_woman2) клиент пользовался картой весь месяц (по каждому дню значение "1")
Как раз КАРТОЙ клиент не пользовался. Он пользовался предоставленным по этой карте кредитом. А саму карту и не трогал. Может, даже потерял или выбросил.

jul_white_woman3) клиент воспользовался картой 1 раз за месяц (два интервала "1" и "0")
Здрассьте... воспользовался - это когда кредит УВЕЛИЧИВАЕТСЯ. Т.е. переход с нуля к единице. А погашение кредита наличия карты, кстати, не требует - кто мешает клиенту карту потерять, и, придя в отделение, просто погасить задолженность налом по паспорту? только не говори, что без карты у него денег не возьмут...
...
Рейтинг: 0 / 0
Подсчет количества повторений значений N в строке после значений M
    #38411740
Михаил Ч.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
jul_white_womanВ идеале, хотелось бы, чтобы формула счиатала 111 как "1", а 444 как "-1" (например), чтобы понимать клиент вышел вышел в "0" 1 раз т.к. у него вообще не было задолженности в течение месяца или же задолженность была и он вышел в "0" 1 раз.
В предложенном варианте Михаилом Ч. это не учитывается.

Предложенная мной формула считала так, как было проставлено вручную в файле (массивный ввод не требуется).
Для наглядности добавил еще пару вариантов.
...
Рейтинг: 0 / 0
Подсчет количества повторений значений N в строке после значений M
    #38411805
jul_white_woman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Михаил Ч., спасибо Вам большое!

Могли бы Вы еще пояснить как работает эта формула:
1) СУММПРОИЗ - почему диапазоны данных выбирается именно таким образом? какие действия производятся с данными этих диапазонов?
2) как здесь использована функция СЧЕТЕСЛИ (мне известно только ее традиционное применение - подсчет количества ячеек в диапазоне по заданным условиям)
...
Рейтинг: 0 / 0
Подсчет количества повторений значений N в строке после значений M
    #38411829
jul_white_woman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Михаил Ч., возможно, Вы так же подскажете еще такую формулу:
В первом столбце есть список клиентов. Необходимо, чтобы во втором столбце рядом c каждым клиентом выводилось число повторений данного клиента в первом столбце.
...
Рейтинг: 0 / 0
Подсчет количества повторений значений N в строке после значений M
    #38412126
Михаил Ч.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
jul_white_woman,
Формула разбита на две составляющие
1. СУММПРОИЗВ((A2:J2<>0)*(B2:K2=0))
Вычисляет, сколько было переходов из "не ноль" в значение "ноль", т.к. первый диапазон начинается со столбца A, где указан номер, то если в столбце B значения начинаются с нуля, то количество будет на единицу больше.
2. вторая часть формулы -ИЛИ(СЧЁТЕСЛИ(B2:K2;{0;"<>0"})=0)
вычисляет, если все значения по дням постоянны (либо равны нулю, либо не равны нулю), то в данном случае из расчета первый части формулы вычитается единица.

Так, для 444 первая часть формулы равна 1, но т.к. в строке все нули, то вычитаем единицу и результат равен нулю
для 555 - первая часть формулы равна 0, и в строке все единицы, то соответственно результат равен 0-1 = -1
Более понятно, как работает вторая часть формулы, видно во втором и третьем варианте из моего последнего файла.

по второму вопросу, так нужно?
Код: vbnet
1.
=СЧЁТЕСЛИ(A$1:A$4;A1)-1
...
Рейтинг: 0 / 0
Подсчет количества повторений значений N в строке после значений M
    #38412217
jul_white_woman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Михаил Ч.,
да, это то, что нужно. Еще раз огромное спасибо! :-)
...
Рейтинг: 0 / 0
Подсчет количества повторений значений N в строке после значений M
    #38412329
jul_white_woman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Михаил Ч.,
прошу помочь с еще одной формулой, если Вас не затруднит.
Создала новую тему (на случай, если у кого-либо из читателей форума будет аналогичная потребность) http://www.sql.ru/forum/1050393-a/vpr-s-usloviem
...
Рейтинг: 0 / 0
21 сообщений из 21, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Подсчет количества повторений значений N в строке после значений M
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]