Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

31 Май 2020, 13:30 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
Новости: Вы можете задать вопрос по LibreOffice или Apache OpenOffice без регистрации, используя форму
 
   Начало   Помощь Поиск Войти Регистрация    задать вопрос  
Страниц: 1 2 3 4 »   Вниз
  Печать  
Автор Тема: Подсчет ячеек справа от заданной ячейки  (Прочитано 2489 раз)
0 Пользователей и 1 Гость смотрят эту тему.
лена89
Форумчанин
***
Offline Offline

Сообщений: 52


« Стартовое сообщение: 20 Март 2020, 16:01 »

Добрый вечер.

Искала на форуме, не нашла похожей задачи. COUNTIF считает  ВСЕ ячейки с заданным значением. Это немного не то. Мне необходима такая функция, которая будет считать количество ячеек в диапазоне (строке) , которые находятся справа от заданной ячейки . К примеру, в ячейке стоит значение  "ИВАНОВ", справа от этой ячейки идут много-много других фамилий, но Иванова точно нет. Но ячеек так много, что ручками считать трудно. Надо, чтобы в результате возвратилось количество ячеек после Иванова. Не важно, - пустых, не пустых, - главное, КОЛИЧЕСТВО всех ячеек. Чтобы знать, когда ставить в смену. К примеру, каждые 11 дней надо ставить Иванова в смену. Вроде 11 не так много для подсчета, но все равно можно сбиться. Так, чтобы я видела, наступило 11 смен или ещё нет. Не знаю, правильно ли объяснила. Всех, кто понял, - заранее благодарю.


* Снимок экрана от 2020-03-20 19-58-26.png (9.8 Кб, 735x111 - просмотрено 19 раз.)
Записан
eeigor
Ubuntu 18.04 LTS
Форумчанин
***
Offline Offline

Сообщений: 80


« Ответ #1: 20 Март 2020, 16:15 »

Если честно, то ничего не понятно. Значит останусь без благодарности...
Ясно только одно: Вы используете лист Calc, как обычный лист бумаги! А мышление надо менять...
Данные должны быть мало-мальски НОРМАЛИЗОВАНЫ (структурированы) и не иметь ПОВТОРЯЮЩИХСЯ ГРУПП (массивов). В данном случае ФИО, ФИО и ФИО - это массив.
Если перестроить таблицу, где будет поле "ФИО" и далее - другие поля (например, дата смены), то данные можно будет просто НАКАПЛИВАТЬ, строчка за строчкой, а считать будет СВОДНАЯ ТАБЛИЦА - ВСЕ ИТОГИ РАЗОМ И ЗА КАЖДОГО! Как вариант, есть и другие средства: формулы массива, таблица подстановки...
Дерзайте! Ибо предложить вариант по Вашим данным невозможно.

А формулам всё равно, как лежат данные: в столбце или в строке.
=COUNTA(B1:E1) + COUNTBLANK(B1:E1)  'Если правая граница установлена

Если проблема в нахождении последней ячейки, а справа данные "не выровнены", то подход другой.
Конечно же, такая формула есть.
« Последнее редактирование: 20 Март 2020, 16:29 от eeigor » Записан
лена89
Форумчанин
***
Offline Offline

Сообщений: 52


« Ответ #2: 20 Март 2020, 16:25 »

Я поняла, что Вы предлагаете. Столбик из неповторяющихся фамилий (все сотрудники) , напротив Иванова. к примеру ставим дату, а в последующих ячейках прибавлять одинаковый шаг, в данном случае 11, и сразу видны все даты, когда должен выходить Иванов. Это не подходит. Делали так. Не всегда одинаковый интервал смен. Так запутаешься. Поскольку в штате не так много фамилий (относительно немного). этот вариант самый удобный, который я привела. Там ещё много нюансов, это к задаче не относится, и эти нюансы решаемы, кроме того. что надо постоянно считать ячейки . которые справа. Неужели нет такой функции? Не верю)))
Записан
eeigor
Ubuntu 18.04 LTS
Форумчанин
***
Offline Offline

Сообщений: 80


« Ответ #3: 20 Март 2020, 16:31 »

Скажите, Вам надо находить границу диапазона СПРАВА в строке или нет?
Записан
лена89
Форумчанин
***
Offline Offline

Сообщений: 52


« Ответ #4: 20 Март 2020, 16:34 »

Да. Это 30 или 31 . Месяц, короче.
Записан
mikekaganski
Гуру
*******
Offline Offline

Пол: Мужской
Расположение: Хабаровск -> Москва
Сообщений: 1 853


« Ответ #5: 20 Март 2020, 16:36 »

В Вашем скриншоте данные расположены так, что Ваше объяснение неправильное. Например, под "Иванов" стоит 3, потому что справа от Иванов в следующей строке три имени. Но там ведь четвёртая ячейка тоже непустая - в ней стоит та самая 3. А потом идут числа 2, 1, 0. Так значит, формула дала бы вместо 3 - 7?

Пожалуйста, старайтесь делать аккуратные примеры.

Теперь что значит - "пустых, непустых"? Справа от Иванова, если честно, 1023 ячейки, большинство - пустые.
« Последнее редактирование: 20 Март 2020, 16:37 от mikekaganski » Записан

С уважением,
Михаил Каганский
лена89
Форумчанин
***
Offline Offline

Сообщений: 52


« Ответ #6: 20 Март 2020, 16:39 »

Это я привела пример того, как бы мне хотелось, чтобы выводилось. Чтобы считалось, что после Иванова 3, и так далее. Подразумевается, что там была бы граница, до которой надо считать. Выше вопрос конкретизировала. Ну, да, я согласна, что корявенько объяснила задачу.
Записан
mikekaganski
Гуру
*******
Offline Offline

Пол: Мужской
Расположение: Хабаровск -> Москва
Сообщений: 1 853


« Ответ #7: 20 Март 2020, 16:42 »

Есть граница, до которой считать? Значит, число ячеек от Иванова до границы равно COLUMN(ячейка_границы)-COLUMN(ячейка_иванова)
Записан

С уважением,
Михаил Каганский
eeigor
Ubuntu 18.04 LTS
Форумчанин
***
Offline Offline

Сообщений: 80


« Ответ #8: 20 Март 2020, 16:45 »

Ну, я так понял, что справа 30-31 ячейка (месяц), а надо всё-таки определять правый край по ходу течения месяца. Если так, то я не могу это решение привести по памяти. Надо раскрыть талмуд.
Суть метода в определении крайней (в пределах 31) ячейки справа, игнорируя пропуски между. Ну есть такая формула с обработкой ошибки деления на ноль.

Вот здесь
https://www.planetaexcel.ru/techniques/2/664/

И вот здесь (это, кстати, оч-чень хороший блог)
https://contexturesblog.com/archives/2019/05/16/excel-lookup-formula-for-last-item-in-column/
« Последнее редактирование: 20 Март 2020, 16:51 от eeigor » Записан
mikekaganski
Гуру
*******
Offline Offline

Пол: Мужской
Расположение: Хабаровск -> Москва
Сообщений: 1 853


« Ответ #9: 20 Март 2020, 16:49 »

Как мне кажется, задача проще решается с использованием условного форматирования, когда подсвечиваются ячейки, в которых значение совпадает с каким-нибудь из N слева.
Записан

С уважением,
Михаил Каганский
лена89
Форумчанин
***
Offline Offline

Сообщений: 52


« Ответ #10: 20 Март 2020, 16:51 »

Есть граница, до которой считать? Значит, число ячеек от Иванова до границы равно COLUMN(ячейка_границы)-COLUMN(ячейка_иванова)

Да, сейчас попробую этот вариант.

Теперь что значит - "пустых, непустых"? Справа от Иванова, если честно, 1023 ячейки, большинство - пустые.

Там могут быть выходные, то есть пустые ячейки. Может не так задачу надо было сформулировать? Например, от самой правой границы, это будет или 31 ячейка, или 30-, надо найти самого  первого Иванова , а потом вернуться и посчитать сколько после него ячеек. Даже не знаю, может вот так сформулировать. То, что Вы предложили, это все-равно придется искать вручную Аванова, задавать его значение, а потом уже автоматически рассчитается количество. А вот так, чтобы само нашло Иванова(самого правого)  и само подсчитало сколько ячеек после него)    
Записан
kompilainenn
Мастер
*****
Offline Offline

Сообщений: 2 952



« Ответ #11: 20 Март 2020, 17:14 »

Может задачу надо сформулировать с самого начала? Не что надо делать с таблицей в Calc, а что надо В ПРИНЦИПЕ сделать? Цель-то какая?
Записан

Поддержать разработчиков LibreOffice можно тут, а наш форум вот тут
mikekaganski
Гуру
*******
Offline Offline

Пол: Мужской
Расположение: Хабаровск -> Москва
Сообщений: 1 853


« Ответ #12: 20 Март 2020, 17:26 »

@kompilainenn абсолютно прав.

А вот решение прямо поставленной задачи.

* CountToTheRight.ods (8.58 Кб - загружено 8 раз.)
Записан

С уважением,
Михаил Каганский
лена89
Форумчанин
***
Offline Offline

Сообщений: 52


« Ответ #13: 20 Март 2020, 17:35 »

Спасибо большое. Буду разбираться. ) LOOKUP , ну да. в принципе я пробовала её, но как прицепить к ней ещё и подсчет ячеек, не знала.
Записан
лена89
Форумчанин
***
Offline Offline

Сообщений: 52


« Ответ #14: 20 Март 2020, 17:52 »

Может задачу надо сформулировать с самого начала? Не что надо делать с таблицей в Calc, а что надо В ПРИНЦИПЕ сделать? Цель-то какая?

Там, понимаете, если конечный результат объяснять, то это будет сложно и для вас и для меня. Потому что там много завязано. Но все проблемы решены, кроме того, что всё автоматизировано, а вот процесс подсчета ячеек справа после конкретной ячейки нет. Единственный момент приходится считать вручную и это выбешивает) Надо всегда знать, сколько ячеек после конкретной фамилии. Зачем? Вот это трудно объяснить. Но попытаюсь. Не всегда Иванов должен выходить через строго-определенное количество дней, например, через 11, как я сказала вначале. Вот сейчас стоит Иванов первый. После него 30 дней. В другой таблице есть подсчет, что Иванов уже вышел 1 раз за январь. Но он должен выйти, к примеру, 6 раз. И вот эти ячейки после Иванова , собственно и нужны для этого подсчета. Они нужны для подставления в другую формулу, которая будет предупреждать, что иванову осталось выйти 5 раз. 3 раза. 2 раза. Но не всегда это одинаковый шаг, понимаете? Если и сейчас не понимаете, то я сдаюсь) Иначе объяснить не могу.

Хочу сразу поправиться. Да, на первый взгляд можно подумать, что достаточно просто считать сколько Ивановых в строчке. Если, к примеру, сейчас 1, то осталось 5 смен.  Обычный подсчет ячеек со значением Иванов. Но это не подходит. Потому что другие формулы ломаются. Нужно именно количество после .
« Последнее редактирование: 20 Март 2020, 18:01 от лена89 » Записан
Страниц: 1 2 3 4 »   Вверх
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!