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

Вход

Регистрация

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

 

= Мир MS Excel/Суммирование по диапазону критериев - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Суммирование по диапазону критериев
negodyaj Дата: Суббота, 10.06.2023, 17:31 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 115
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Как можно сделать суммирование указывая не 1 критерий, а сразу весь столбец критериев, сколько бы их там не было?
Код
=СУММЕСЛИМН(A:A;B:B;Диапозон из ячейки C:C)


Пока в голову просто приходит каждую строку отдельно прописывать, но если таких строк тысяча, не вариант.
 
Ответить
СообщениеКак можно сделать суммирование указывая не 1 критерий, а сразу весь столбец критериев, сколько бы их там не было?
Код
=СУММЕСЛИМН(A:A;B:B;Диапозон из ячейки C:C)


Пока в голову просто приходит каждую строку отдельно прописывать, но если таких строк тысяча, не вариант.

Автор - negodyaj
Дата добавления - 10.06.2023 в 17:31
Pelena Дата: Воскресенье, 11.06.2023, 09:21 | Сообщение № 2
Группа: Админы
Ранг: Местный житель
Сообщений: 19405
Репутация: 4555 ±
Замечаний: ±

Excel 365 & Mac Excel
файл с небольшим примером помог бы в понимании проблемы


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
Сообщениефайл с небольшим примером помог бы в понимании проблемы

Автор - Pelena
Дата добавления - 11.06.2023 в 09:21
negodyaj Дата: Вторник, 13.06.2023, 13:00 | Сообщение № 3
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 115
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Файл пример
К сообщению приложен файл: 5403080.xlsx (9.3 Kb)
 
Ответить
СообщениеФайл пример

Автор - negodyaj
Дата добавления - 13.06.2023 в 13:00
Serge_007 Дата: Вторник, 13.06.2023, 13:09 | Сообщение № 4
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
Код
=СУММПРОИЗВ(ЕЧИСЛО(ПОИСКПОЗ(B1:B30;C1:C3;))*A1:A30)


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
Сообщение
Код
=СУММПРОИЗВ(ЕЧИСЛО(ПОИСКПОЗ(B1:B30;C1:C3;))*A1:A30)

Автор - Serge_007
Дата добавления - 13.06.2023 в 13:09
msi2102 Дата: Вторник, 13.06.2023, 13:11 | Сообщение № 5
Группа: Проверенные
Ранг: Обитатель
Сообщений: 415
Репутация: 129 ±
Замечаний: 0% ±

Excel 2007
Пробуйте (массивная):
Код
=СУММ(СУММЕСЛИМН(A:A;B:B;C1:C3))

Или
Код
=СУММ(СУММЕСЛИ(B:B;C1:C3;A:A))

Или так, (тоже массивная):
Код
=СУММ(A:A*(B:B=ТРАНСП(C1:C3)))
К сообщению приложен файл: 5522934.xlsx (9.4 Kb)


Сообщение отредактировал msi2102 - Вторник, 13.06.2023, 13:27
 
Ответить
СообщениеПробуйте (массивная):
Код
=СУММ(СУММЕСЛИМН(A:A;B:B;C1:C3))

Или
Код
=СУММ(СУММЕСЛИ(B:B;C1:C3;A:A))

Или так, (тоже массивная):
Код
=СУММ(A:A*(B:B=ТРАНСП(C1:C3)))

Автор - msi2102
Дата добавления - 13.06.2023 в 13:11
negodyaj Дата: Вторник, 13.06.2023, 16:04 | Сообщение № 6
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 115
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Ввел обе формулы на боевой файл, но косякнул что во первых про даты забыл сказать, потерял, во вторых не сработали формулы.
Искал где косяк у меня,и как поправить, не получилось. Нужна помощь) Сделал все в нужных ячейках

И через массив чот оч долго грузит данные...

Код
=СУММ(СУММЕСЛИ(B:B;C1:C3;A:A))

Эта не работает без массива
К сообщению приложен файл: kniga2.xlsx (11.9 Kb)


Сообщение отредактировал negodyaj - Вторник, 13.06.2023, 16:30
 
Ответить
СообщениеВвел обе формулы на боевой файл, но косякнул что во первых про даты забыл сказать, потерял, во вторых не сработали формулы.
Искал где косяк у меня,и как поправить, не получилось. Нужна помощь) Сделал все в нужных ячейках

И через массив чот оч долго грузит данные...

Код
=СУММ(СУММЕСЛИ(B:B;C1:C3;A:A))

Эта не работает без массива

Автор - negodyaj
Дата добавления - 13.06.2023 в 16:04
msi2102 Дата: Вторник, 13.06.2023, 16:32 | Сообщение № 7
Группа: Проверенные
Ранг: Обитатель
Сообщений: 415
Репутация: 129 ±
Замечаний: 0% ±

Excel 2007
Вы явно слишком упростили пример. Как понял:
без слонов и собак
Код
=СУММЕСЛИМН('данные 1'!$D$2:$D$8;'данные 1'!$A$2:$A$8;A2)

Со слонами и собаками:
Код
=СУММЕСЛИМН('данные 1'!$D$2:$D$8;'данные 1'!$A$2:$A$8;A2;'данные 1'!$C$2:$C$8;H2)
К сообщению приложен файл: 1267796.xlsx (12.0 Kb)
 
Ответить
СообщениеВы явно слишком упростили пример. Как понял:
без слонов и собак
Код
=СУММЕСЛИМН('данные 1'!$D$2:$D$8;'данные 1'!$A$2:$A$8;A2)

Со слонами и собаками:
Код
=СУММЕСЛИМН('данные 1'!$D$2:$D$8;'данные 1'!$A$2:$A$8;A2;'данные 1'!$C$2:$C$8;H2)

Автор - msi2102
Дата добавления - 13.06.2023 в 16:32
Serge_007 Дата: Вторник, 13.06.2023, 16:33 | Сообщение № 8
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
про даты забыл сказать
Код
=СУММПРОИЗВ(ЕЧИСЛО(ПОИСКПОЗ('данные 1'!C$2:C$8;'данные 2'!P$1:P$2;))*(A2='данные 1'!A$2:A$8)*'данные 1'!D$2:D$8)


через массив чот оч долго грузит данные
Разумеется
Формулы массива и так "тяжелые", а Вы в них ещё и целые столбцы указываете...


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
Сообщение
про даты забыл сказать
Код
=СУММПРОИЗВ(ЕЧИСЛО(ПОИСКПОЗ('данные 1'!C$2:C$8;'данные 2'!P$1:P$2;))*(A2='данные 1'!A$2:A$8)*'данные 1'!D$2:D$8)


через массив чот оч долго грузит данные
Разумеется
Формулы массива и так "тяжелые", а Вы в них ещё и целые столбцы указываете...

Автор - Serge_007
Дата добавления - 13.06.2023 в 16:33
negodyaj Дата: Вторник, 13.06.2023, 16:40 | Сообщение № 9
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 115
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Как понял:

Не верно) Я ж указал что должно получится, в обоих случая результаты отличаются, и повялвятеся лищняя колонка
 
Ответить
Сообщение
Как понял:

Не верно) Я ж указал что должно получится, в обоих случая результаты отличаются, и повялвятеся лищняя колонка

Автор - negodyaj
Дата добавления - 13.06.2023 в 16:40
Serge_007 Дата: Вторник, 13.06.2023, 16:53 | Сообщение № 10
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
результаты отличаются
Результат работы моей второй формулы совпадает с указанными Вами в файле значениями


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
Сообщение
результаты отличаются
Результат работы моей второй формулы совпадает с указанными Вами в файле значениями

Автор - Serge_007
Дата добавления - 13.06.2023 в 16:53
negodyaj Дата: Вторник, 13.06.2023, 16:53 | Сообщение № 11
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 115
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Формулы массива и так "тяжелые", а Вы в них ещё и целые столбцы указываете...


Спасибо, все работает четко) А как то можно упростить вес, если тавбличка оч большая, или это уже самое быстрое и так?
 
Ответить
Сообщение
Формулы массива и так "тяжелые", а Вы в них ещё и целые столбцы указываете...


Спасибо, все работает четко) А как то можно упростить вес, если тавбличка оч большая, или это уже самое быстрое и так?

Автор - negodyaj
Дата добавления - 13.06.2023 в 16:53
Nic70y Дата: Вторник, 13.06.2023, 17:15 | Сообщение № 12
Группа: Друзья
Ранг: Экселист
Сообщений: 9005
Репутация: 2369 ±
Замечаний: 0% ±

Excel 2010
вдруг подойдет
[vba]
Код
Sub u_96()
    Application.ScreenUpdating = False
    a = Cells(Rows.Count, "a").End(xlUp).Row
    b = Cells(Rows.Count, "c").End(xlUp).Row
    e = 0
    For c = 1 To b
        d = Range("c" & c).Value
        f = Application.SumIf(Range("b1:b" & a), d, Range("a1:a" & a))
        e = f + e
    Next
    Range("e2") = e
    Application.ScreenUpdating = True
End Sub
[/vba]
К сообщению приложен файл: 5403080.xlsm (18.3 Kb)


ЮMoney 41001841029809
 
Ответить
Сообщениевдруг подойдет
[vba]
Код
Sub u_96()
    Application.ScreenUpdating = False
    a = Cells(Rows.Count, "a").End(xlUp).Row
    b = Cells(Rows.Count, "c").End(xlUp).Row
    e = 0
    For c = 1 To b
        d = Range("c" & c).Value
        f = Application.SumIf(Range("b1:b" & a), d, Range("a1:a" & a))
        e = f + e
    Next
    Range("e2") = e
    Application.ScreenUpdating = True
End Sub
[/vba]

Автор - Nic70y
Дата добавления - 13.06.2023 в 17:15
Serge_007 Дата: Вторник, 13.06.2023, 17:22 | Сообщение № 13
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
упростить вес
Добавляете в исходные данные столбец с признаком и делаете сводную (см. вложение)
Это будет максимально быстро

[p.s.]Так же можно признак проставлять макросом, это тоже будет довольно быстро[/p.s.]
К сообщению приложен файл: 20230613_negodyaj.xls (40.0 Kb)


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
Сообщение
упростить вес
Добавляете в исходные данные столбец с признаком и делаете сводную (см. вложение)
Это будет максимально быстро

[p.s.]Так же можно признак проставлять макросом, это тоже будет довольно быстро[/p.s.]

Автор - Serge_007
Дата добавления - 13.06.2023 в 17:22
negodyaj Дата: Пятница, 16.06.2023, 18:55 | Сообщение № 14
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 115
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
А если мне надо сумму между 2 датами всю получить, т.е. с 1 по 7 июня например. Как можно формулу поправить, не получается.


Сообщение отредактировал Serge_007 - Пятница, 16.06.2023, 19:00
 
Ответить
СообщениеА если мне надо сумму между 2 датами всю получить, т.е. с 1 по 7 июня например. Как можно формулу поправить, не получается.

Автор - negodyaj
Дата добавления - 16.06.2023 в 18:55
Serge_007 Дата: Пятница, 16.06.2023, 19:01 | Сообщение № 15
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
если мне надо сумму между 2 датами всю получить
...то это - совсем другая задача, следовательно - другая тема


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
Сообщение
если мне надо сумму между 2 датами всю получить
...то это - совсем другая задача, следовательно - другая тема

Автор - Serge_007
Дата добавления - 16.06.2023 в 19:01
  • Страница 1 из 1
  • 1
Поиск:

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