Вычисление суммы, количества и среднего по цвету заливки и шрифта в Excel

Поділитися
Вставка
  • Опубліковано 20 лип 2021
  • Пишем простые макро-функции на VBA для подсчета количества, суммы и среднего арифметического ячеек с заданным цветом заливки и/или шрифта.
    Скачать пример www.planetaexcel.ru/technique...
    Мои книги planetaexcel.ru/books/
    Мои онлайн-курсы www.planetaexcel.ru/learning/
    Моя надстройка PLEX (+150 новых функций для вашего Excel) planetaexcel.ru/plex/
    Twitter / planeta_excel
    Facebook / planetaexcel
    Instagram / planetaexcel

КОМЕНТАРІ • 142

  • @ASGol
    @ASGol 3 роки тому +34

    Николай, низкий поклон за Ваш безценный труд на благо всех, кто пользуется Excel!!!

    • @Korsolan
      @Korsolan 2 роки тому

      не знаю, все сделала, как на видео, но сумму мне так и не посчитало((((

  • @valeryv9146
    @valeryv9146 3 роки тому +17

    Подача, как и всегда, на высшем уровне!
    Легко и изящно, просто о сложном.
    Как гениальный художник, лёгкими мазками и вуаля, результат.
    Николай, спасибо!!!

  • @Sig4childrens
    @Sig4childrens 3 роки тому +5

    Николай, Вы - восхитетельны! Ваши объяснения - великолепны. Огромное спасибо за Ваш труд. Пусть он приносит Вам не только прибыль, но и удовольствие!

  • @Geralexey1
    @Geralexey1 3 роки тому +6

    Только недавно появилась задача с суммированием по цвету, и буквально через пару дней появляется данное видео. Большое спасибо, Николай!

  • @Alex1958Chernigov
    @Alex1958Chernigov 2 місяці тому

    Аналогичного контента в UA-cam достаточно много, но только здесь всё изложено по полочкам и грамотно. Например, объявлены переменные, что весьма важно. Спасибо автору канала и подписка.

  • @dimasavukov6230
    @dimasavukov6230 3 роки тому +10

    Спасибо, Николай! Как всегда на высоте!

  • @pchela28
    @pchela28 2 роки тому +1

    Николай, Ваши уроки СТОЛЬКО раз меня, выручали! Спасибо огромное!

  • @aleksandr9865
    @aleksandr9865 Рік тому +2

    Крайне благодарю данного мужчина, ваши учения оказались весьма полезны для меня. Преочень благодарен вам

  • @user-DeN234
    @user-DeN234 2 роки тому +1

    Огромное вам спасибо!!!!! я никак не мог посчитать сумму цветных ячеек. дело в том что в экселе я новичок, а программирование в экселе, для меня вообще что-то запредельное, никогда этого не делал. НО благодаря вашему уроку я не только взял на вооружение этот макрос, но и написал свой, который мне помог посчитать количество цветных ячеек с конкретным текстом. Вы великолепный преподаватель!!!!

  • @sazonov3201
    @sazonov3201 3 роки тому +13

    Очень познавательно. Один нюанс. Чтобы получить среднее, надо делить не на 7, а на количество ячеек с числами, т.е. 6

    • @nickmakukha9506
      @nickmakukha9506 2 роки тому +1

      дак результат функция и выдала с учетом количества ячеек с числами, 27/6=4,5

  • @discord4364
    @discord4364 Рік тому +1

    Вот это шикарное видео!
    Я такими макросами подсчитывал кол-во сотрудников в табеле, считал их выработку и прочие плюшки)
    Конечно же, не без помощи знаний Николая👍👍👍

  • @user-ls1fr9ti8i
    @user-ls1fr9ti8i 2 роки тому +1

    Великолепная подача материала. Особенно радует подробное объяснение работы кода VBA. Спасибо огромное.

  • @alonaisrael
    @alonaisrael 3 роки тому +4

    Спасибо что вы есть 🙏🏻

  • @paveldobrenkov3677
    @paveldobrenkov3677 2 роки тому +1

    Николай, хороший обучающий урок! Хотелось бы чтобы Вы выпустили еще одну книгу с VBA программированием, макросами и функциями, от нуля до продвинутого. С удовольствием приобрел бы данную книгу.

  • @SpeedSG.77
    @SpeedSG.77 2 роки тому +1

    Я в шоке… спасибо! Как давно я искал простой вариант подсчёта/суммирования и так далее ячеек по цвету.
    Огромное спасибо!

  • @user-li8hy2gg9z
    @user-li8hy2gg9z 3 роки тому +1

    Отдельное спасибо за готовые шаблоны! Подача материала - по красоте! )

  • @Dmitrii-Zhinzhilov
    @Dmitrii-Zhinzhilov 3 роки тому +1

    Николай, благодарю! Полезный урок, почерпнул для себя новое!

  • @user-bi4dm2fb4w
    @user-bi4dm2fb4w 2 роки тому +1

    Как всегда все максимально просто и ясно! СПАСИБО!!!

  • @user-pl1oo1jj2p
    @user-pl1oo1jj2p 3 роки тому +2

    жду уроки и учебник по VBA вашего авторства, очень нравится подача

  • @user-lh2wn7lx3i
    @user-lh2wn7lx3i 3 роки тому

    Николай, спасибо!! И мне нравится Ваш голос и подача. Супер!!

  • @ExcelStore
    @ExcelStore 3 роки тому +1

    Понятный и доступный пример. Спасибо за видео!

  • @pokatunchik
    @pokatunchik 3 роки тому +4

    Спасибо за PLEX. С удовольствием пользуюсь.

    • @planetaexcel
      @planetaexcel  3 роки тому

      Не за что :) Рад, что пригодился :)

    • @user-nn6cr5ze8i
      @user-nn6cr5ze8i 3 роки тому

      PLEX - бомба!

  • @viktorsukhoj2509
    @viktorsukhoj2509 3 роки тому +3

    Ну вот как раз завтра, это и пригодится в моей работе 👍

  • @ilshtain
    @ilshtain 2 роки тому

    Всю сознательную жизнь работаю в эксель, но это видео - просто пушка! Огонь! Спасибо за видео!
    Было бы круто, все эти функции запихнуть в одну функцию с указанием параметра - выбор алгоритма, например, как в функции "промежуточные итоги"

  • @Alexey_Qwerty
    @Alexey_Qwerty 3 роки тому +1

    В очередной раз - БЛАГОДАРЮ!

  • @user-gr8eo6ww9n
    @user-gr8eo6ww9n 3 роки тому +1

    Как всегда СУПЕР!!!

  • @user-nf9zf1dp6g
    @user-nf9zf1dp6g 3 роки тому

    Спасибо, уже использую. Вы молодец.

  • @Croatoan_PL
    @Croatoan_PL 3 роки тому +7

    А еще заставить пересчитать функции автоматически можно добавив в код if intersect, тем самым заставить эксель запускать код при выделении целевых ячеек.

    • @user-ih8cp6bj7g
      @user-ih8cp6bj7g 4 місяці тому

      О даа, специально это искал, ибо значение не меняется ладе если меняешь цвет ячейки

    • @user-ih8cp6bj7g
      @user-ih8cp6bj7g 4 місяці тому

      Подскажи, куда именно добавить в кол if intersect

  • @user-po9rd7vm3j
    @user-po9rd7vm3j 3 роки тому

    Большое спасибо! Попробуем новинку на работе ))

  • @annad4897
    @annad4897 2 роки тому

    Спасибо огромное!!!! Очень нужное видео!

  • @user-no1hw6yy4q
    @user-no1hw6yy4q 2 роки тому

    Обшарил другие каналы, самое лучшее как всегда здесь

  • @SenyaKudri
    @SenyaKudri 3 роки тому +2

    Это очень хорошо. Респект

  • @user-ev3gf2ew8y
    @user-ev3gf2ew8y 3 роки тому

    Вижу Николая - ставлю лайк. Потом смотрю ролик.

  • @user-dg6ce9jc6c
    @user-dg6ce9jc6c Рік тому

    Спасибо огромное вам!!!!!

  • @Gamma9971
    @Gamma9971 3 роки тому

    Очень красиво

  • @Bercut433
    @Bercut433 3 роки тому +1

    Спасибо!

  • @MegaMyExperience
    @MegaMyExperience 3 роки тому +1

    Спасибо!!!

  • @user-fd5fq2wk8j
    @user-fd5fq2wk8j Рік тому

    Огромное спасибо!!!!!!!)

  • @Rice0987
    @Rice0987 3 роки тому +3

    Не совсем корректно называть процедуры с возвращаемым значением макрофункциями. Ведь вы знаете, что макрофункции - это функции листа макросов Excel 4.0, предшественника VBA. Кстати, по ним можно было бы сделать небольшой ликбез. Очень полезная штука.
    А за видео, как всегда лайк. Для меня ничего нового, а людям - минус один мартышкин труд. :)

  • @user-mc9fu8si9s
    @user-mc9fu8si9s 3 роки тому

    Просто 🔥🔥🔥

  • @yurd563
    @yurd563 3 роки тому +2

    Большое спасибо за видеоурок!

  • @dowletgeldiorazow4231
    @dowletgeldiorazow4231 3 роки тому

    Привет из Туркменистана

  • @user-pz6jv4kc8s
    @user-pz6jv4kc8s 5 місяців тому +1

    Здравствуйте, Николай. Огромное спасибо за ролик, очень полезная информация. Но скажите можно ли заставить работать этот макрос при изменении цвета ячеек через условное форматирование? У меня автоматически используется закрашивание в 3 цвета по заданным условиям, ячейки желтого цвета нужно суммировать величины указанные в них, а зеленые и красные просто подсчитывать количество ячеек каждого цвета. Но еще раз скажу все закрашивание не в ручную, а по условному форматированию и файл с общим доступом к книге для нескольких пользователей для одновременной работы. Возможно это реализовать?

  • @user-qx3jt8fw1v
    @user-qx3jt8fw1v 3 роки тому +1

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

  • @denmalysheff
    @denmalysheff 3 роки тому

    Элегантно

  • @alexandershavleyko1313
    @alexandershavleyko1313 3 роки тому

    Simply clever 🚥

    • @Rice0987
      @Rice0987 3 роки тому

      Перевод - просто клёво. :)

  • @user-ii4iz2ko9j
    @user-ii4iz2ko9j Рік тому +1

    Так какой выход, если нужно использовать раскраску форматирования? Не перекрашивать же потом всё вручную? Или писать функцию раскрашивания свою?

  • @ppr8117
    @ppr8117 3 роки тому +2

    Николай, СУПЕР!
    Событийный макрос (изменения на листе) на уровне листа вместо Ctrl+Alt+F9 разве не будет работать?

    • @planetaexcel
      @planetaexcel  3 роки тому

      Будет, но это ещё один макрос :)

  • @user-up4pr3lj1m
    @user-up4pr3lj1m 3 роки тому

    👍👍👍

  • @antonkharitonov9007
    @antonkharitonov9007 3 роки тому

    Лайк-лайк-лайк!

  • @arsenakacharava
    @arsenakacharava 3 роки тому

    super

  • @user-dy9zz8ji3y
    @user-dy9zz8ji3y 10 місяців тому

    Николай! Конечно благодарности мои вместе со всеми. НО когда ячейки таблицы покрашены условным форматированием, а образец покрашен копией формата цветных ячеек, - НЕ работает. Просто затонированные ячейки считает.

  • @stariymaster9
    @stariymaster9 Рік тому

    Добрый день Николай. Ваши уроки столько раз меня выручали. Спасибо огромное!
    Если можно отправьте мне Ваш почтовый адрес. У меня просьба по поводу экселл таблицу.

  • @uctac1514
    @uctac1514 7 місяців тому

    Очень полезное видео! Большое спасибо!!!👍 Но у меня вопрос: что нужно сделать, чтобы пользовательская функция сохранилась в Excel и при создании новой книги с нуля (не на базе книги, где был создан модуль с пользовательской функцией) уже была среди иных функций, то есть чтобы не приходилось для каждого нового файла заново прописывать функцию)))

  • @vitalii.hladun
    @vitalii.hladun Рік тому

    Все получилось спасибо.
    Как можно было бы использовать данную функцию формуле =СУММЕСЛИМН, в качестве одного из условий?

  • @sergeyorban219
    @sergeyorban219 2 роки тому

    Возможно ли прописать функцию, суммирующую значения из премечаний к ячейкам?

  • @user-xg4pd7en9d
    @user-xg4pd7en9d 3 роки тому

    Николай, спасибо за великолепный ролик! Эх, я что-то никак не могу воспринять VBA и понимать его, не укладывается он у меня. Вот SQL, R - да, легко могу освоить, а VBA никак не откладывается( поэтому просто скопирую эти колы и буду вставлять их в модуль по необходимости
    Например, я не понимаю, почему после строки dim должна быть пустая строка и только после неё for? в современных языках программирования можно и без пустых строк. Просто не понятно, когда строку пропускать, а когда - нет

  • @user-zh5ro2wg8m
    @user-zh5ro2wg8m 3 роки тому

    Николай, спасибо вам за ваши замечательные уроки!!! Подскажите, почему у меня не работают назначенные кнопки макросов? Запускаются только с ленты.

    • @user-zh5ro2wg8m
      @user-zh5ro2wg8m 3 роки тому

      Сам же и разобрался: была запущена запись макроса макрорекодером.

  • @thefizik3594
    @thefizik3594 2 роки тому

    Николай Добрый День. У меня в таблице есть объединенные ячейки, то есть при подсчете количества ячеек с определенным цветом он соответственно считает объединенную ячейку как две разные, и выдает результат на 1 больше. Это можно подправить?

  • @igorzinenko4182
    @igorzinenko4182 3 роки тому

    magnific

  • @user-su4ij6fi8n
    @user-su4ij6fi8n 3 роки тому

    Николай, спасибо за много полезного и очень полезного. Но свою задачу не смог решить. подскажите как прописать формулу значение которой зависит от двух изменяющихся значений в одних ячейках. пример если А1=15 когда В1 "вакант" необходимо "график 1,2" соответственно если А1=16 когда В1 "вакант" необходимо "график 3,4", но если В1 другое значение необходимо пусто. был бы очень презнателен

  • @pvv_live2226
    @pvv_live2226 3 роки тому

    VBA, конечно, очень удобный язык, так все хорошо воспринимается в нем. Жаль, что он доступен только в десктопной версии. Теперь нам всем придется учить JavaScript, чтоб то же самое кутить в веб-версии Excel.

  • @user-sj3wm8fg1p
    @user-sj3wm8fg1p 3 роки тому +3

    Осталось не озвученным, есть ли возможность сделать подобное для условного форматирования и что для этого нужно?

    • @ernil86
      @ernil86 3 роки тому

      Соглашусь, тоже в свое время очень расстроился что подобные штуки не работают с условным форматированием....

    • @planetaexcel
      @planetaexcel  3 роки тому

      Очень сложно и, в некоторых случаях, невозможно. В VBA нет способа быстро определить цвет ячеек, залитых условным форматированием. Есть свойство Display.Interior.Color, но оно не работает в пользовательских функциях.

    • @user-lq6eb2nm7v
      @user-lq6eb2nm7v Рік тому

      @@planetaexcel а функция Excel "Промежуточные.Итоги" не подойдет?

  • @VADIMSARKAN
    @VADIMSARKAN 3 роки тому

    Как показывает практика, обращение к ячейкам в VBA занимает немало времени при обработке больших объёмов данных.
    Поэтому, я бы ColorSample.Interior.Color записал в переменную, и обращался бы в цикле к ней.
    А на случай, когда в DataRange целый столбец, можно создать новую область для анализа Set NewRange = Intersect(DataRange, DataRange.Parent.UsedRange).
    Ну и если идти до конца, нужна защита от "дурака" на случай, если в ColorSample будет передана область не из одной ячейки.

    • @planetaexcel
      @planetaexcel  3 роки тому +1

      Всё верно, Вадим - согласен по всем пунктам. Но если всё это показывать и нормально рассказывать в ролике, то он будет больше получаса и никто его смотреть не будет :)

    • @VADIMSARKAN
      @VADIMSARKAN 3 роки тому

      И то верно)

  • @inicman1991
    @inicman1991 2 роки тому

    Николай, как его можно улучшить, чтобы можно было анализировать таблицы где более 1000 строк?

  • @user-rp3jz6sy1b
    @user-rp3jz6sy1b 2 роки тому

    Как посчитать количество в столбце строк с определенным текстовым содержанием?

  • @i.wihrev2913
    @i.wihrev2913 3 роки тому

    Подскажите пожалуйста, что в этой формуле не верно =ЕСЛИ(И([@СТАТУС]="Оплачен";[@ПРОИЗВОДИТЕЛЬ]="ПРОДАВЕЦ1");СЧЁТЕСЛИ(Таблица2[ПРОИЗВОДИТЕЛЬ];"ПРОДАВЕЦ1"))
    Задача такая: Есть столбец в таблице со статусом заказа, в другом столбце разные производители. Делаю подсчёт заказов в статусе ="Оплачен" и "Производитель1". Формула не работает. Можно ли формулу СЧЁТЕСЛИ вставлять в другие формулы как в данном примере? Или для этого подсчёта есть более простые варианты?

  • @MrViiD
    @MrViiD 2 місяці тому

    А есть возможность глянуть решение такой задачи?
    У меня есть ячейка с оплатой проведенная или нет(цветом выделяется, если проведенная то зеленая, если нет, то красная. Назовем ее А1). И есть ячейка с % (B1).
    Мне надо чтобы в ячейке B1 писались проценты только в том случае, если в А1 цвет зеленый.
    Что-то ищу, но пока не нашел решения.

  • @user-vq8jg3ib1t
    @user-vq8jg3ib1t 2 роки тому

    У меня вопрос такой: можно ли ячейку закрасить цветом, из выпадающего списка цветов: создать отдельный диапазон, например, из 5 цветов, а потом щёлкнув на ячейку, выбирать цвет из списка - и ячейка окрасилась. Ну вот надо мне вот так.
    По ходу это сделать нельзя. Если можно, ну подскажите.

  • @user-dt4yz4sf2l
    @user-dt4yz4sf2l 3 роки тому

    Спасибо! Подскажите к какому свойству Range обратиться. Мне нужно сравнить цвет ячейки с заданным (без цикла). Если цвет ячейки равен заданному то выполняется = А1+1, если нет то просто =А1. Но все дело в том что цвет ячейки меняется в зависимости от условного форматирования (заданный цвет не меняется). Пробовал как у вас Interior.Color не получается: если цвет ячейки меняется в связи с условным форматированием выдает ИСТИНА, хотя должно быть ЛОЖЬ, т.к цвет ячейки и заданный отличаются.

    • @Rice0987
      @Rice0987 3 роки тому

      Очевидно, что нужно использовать условие из условного форматирования. Тогда условием отслеживания у вас будет не цвет, а значение, которое проверяется формулой условного форматирования.

    • @user-dt4yz4sf2l
      @user-dt4yz4sf2l 3 роки тому

      @@Rice0987 ну это понятно, просто формула большая в условном форматировании. думал что можно ее не дублировать 10 раз

    • @Rice0987
      @Rice0987 3 роки тому

      @@user-dt4yz4sf2l в некоторых случаях я оставляю формулу условного форматирования в соседней колонке, а условие форматирования проверяю по значению той колонки. Вариантов несколько. Можно выбрать оптимальный.

  • @user-er8ss3tz1c
    @user-er8ss3tz1c Рік тому

    Подскажите кто-нибудь , что я сделал не так , не считает ячейки по цвету , в ячейке пишет 0 и excel не показывает ошибки в формуле? Вроде сделал всё как в видео и не один раз, но результат один в подсчетах стоит 0.

  • @godfather1713
    @godfather1713 2 роки тому

    Здравствуйте. Скажите, а почему со следующим цветом не работает функция, у меня несколько цветов? С одним получилось, а другие цвета начинаешь по такому же принципу делать и вылазит ошибка в виде решетки, не пойму никак в чем дело)

  • @goshagocha3941
    @goshagocha3941 Рік тому

    А как в формуле задать функцию раскрашивания ячейки или изменения шрифта? (например: если значение 1ой ячейки x>0, то 2ая ячейка раскрашивается в красный цвет и содержимое отображается жирным курсивом)

    • @planetaexcel
      @planetaexcel  Рік тому

      Гуглите "условное форматирование в Excel" :)

  • @user-pf2dg5wd8x
    @user-pf2dg5wd8x 2 роки тому

    =ПРОМЕЖУТОЧНЫЕ.ИТОГИ() + сортировка по цвету?

  • @ayukaangirov7493
    @ayukaangirov7493 3 роки тому +3

    Первый)

  • @user-no1hw6yy4q
    @user-no1hw6yy4q 2 роки тому

    Как включить фильтры?

  • @yakovlevolegg
    @yakovlevolegg 4 місяці тому

    БОГ ЕКСЕЛЬ - ТАК И ЗАПИСАЛ У СЕБЯ ВО ВКЛАДКАХ

  • @user-tu3xh2bx5o
    @user-tu3xh2bx5o 3 роки тому

    Название функции можно только латиницей писать?

    • @planetaexcel
      @planetaexcel  3 роки тому

      Нет, можно и по-русски, без проблем.

  • @BoY304KBB02
    @BoY304KBB02 7 місяців тому

    у меня выдает #знач! все сделал как на видео, причем на каждую команду одна реакция #знач! Что не так?

  • @gaddenis77
    @gaddenis77 3 роки тому

    Нашел на просторах Ютуба (см. ниже) макрос видит цвета условного форматирования

  • @user-px6kx9gj6u
    @user-px6kx9gj6u 3 роки тому

    Плохо, что нет возможности подбирать нужные функции под конкретный "запрос"

  • @Rice0987
    @Rice0987 3 роки тому

    Ну, и вместо трёх разноимённых функций можно сделать это опцией в виде третьего аргумента, наподобие aggregate или subtotal.
    Это не к вам, а к вашим зрителям. :)

    • @Sig4childrens
      @Sig4childrens 3 роки тому

      Буду очень признателен, если сможете для чайника написать код. Можно, конечно, попробовать разобраться, но на такие штуки остается только ночь, когда не знаешь, а ночью так тянет спать.... Да и наверняка еще много людей скадет Вам СПАСИБО

    • @Rice0987
      @Rice0987 3 роки тому +1

      @@Sig4childrens весь код Николай оставил в описании. Вам нужно только добавить третью опцию, можно также в виде цифр, как в упомянутых функциях и по оператору select case расписать по номерам 1, 2, 3 по порядку те функции, которые идут одна за другой. Это не сложно, поверьте. 10 минут на выходных - это не долго. :)

    • @Sig4childrens
      @Sig4childrens 3 роки тому +1

      @@Rice0987 да, теперь понятно! Спасибо!

    • @Rice0987
      @Rice0987 3 роки тому +1

      @@Sig4childrens Надеюсь, получилось? Рад был помочь.😊

  • @user-bs5zp6qr3q
    @user-bs5zp6qr3q 2 роки тому

    Пишет ошибку ИМЯ ((

  • @Croatoan_PL
    @Croatoan_PL 3 роки тому +3

    Не, это, безусловно, круто. Но вопрос: зачем? А не проще ли использовать фильтр (по цвету) и функцию АГРЕГАТ?

    • @allesgute2510
      @allesgute2510 3 роки тому

      Использовать фильтр (по цвету) можно для одного столбца. А как охватить широкий диапазон?

    • @Croatoan_PL
      @Croatoan_PL 3 роки тому +1

      @@allesgute2510 честно говоря, я смутно представлять вообще для чего эта задача. Кто будет данные отвечать цветом, да ещё в нескольких столбцах, да ещё без условного форматирования, вручную? Это для чего?

    • @allesgute2510
      @allesgute2510 3 роки тому

      @@Croatoan_PL , да я о практическом применении толком и не подумал. Просто заметил, что технически эти способы малость разнятся.

    • @Sig4childrens
      @Sig4childrens 3 роки тому

      Агрегат работает с УФ?

    • @user-lq6eb2nm7v
      @user-lq6eb2nm7v Рік тому

      @@Croatoan_PL Как пример: график работ (план/факт) множество данных, на ячейки ставим условное форматирование (план=факту - ячейка зеленая) по итогу формула считает сумму зеленых ячеек :)

  • @davrontodjibaev
    @davrontodjibaev 3 роки тому

    А почему цвета ЛГБТ ???

  • @antigorky
    @antigorky 10 місяців тому

    Не работает, и ошибок не выдает.

  • @constantine3805
    @constantine3805 Рік тому

    а если у меня в ячейках не числа, а буквы, то как сделать подсчет цветных ячеек?

  • @user-lu5de8mu3w
    @user-lu5de8mu3w 3 роки тому +1

    Спасибо!

  • @user-PavelPigt
    @user-PavelPigt 2 роки тому

    Спасибо!!!