|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
06.05.2013, 02:14 | #1 |
Форумчанин
Регистрация: 11.08.2009
Сообщений: 135
|
СУММ столбцы с заданным шагом
Здравствуйте!
Для суммирования данных столбца с заданным шагом, как один из вариантов, применяется формула массива =СУММ(ЕСЛИ(ОСТАТ(СТРОКА(Данные);шаг )=№стр;Данные), Подскажите пожалуйста, а возможно ли как-то с помощью кода просуммировать данные столбца с заданным шагом(например -4 ) если первая строка как и последняя строка, диапазона суммирования, данных заранее не известна(см. вложение строка 39- строка начала суммирования, а может быть и 43-й, 47-й и т.д. или 35-й) ? Благодарю за внимание |
06.05.2013, 09:02 | #2 |
Старожил
Регистрация: 08.02.2012
Сообщений: 2,173
|
например, можно так:
Код:
з.ы. уберите перевод строки. в формуле
Правильно поставленная задача - три четверти решения.
Последний раз редактировалось DiemonStar; 06.05.2013 в 09:05. |
06.05.2013, 10:25 | #3 |
Форумчанин
Регистрация: 11.08.2009
Сообщений: 135
|
DiemonStar спасибо за отклик, но очевидно я нарушил Ваш девиз - " Правильно поставленная задача......" , вопрос как раз и соостоит в том, что я заранее не знаю от какой ячейки начинать счет во втором диапазоне данных(G35:G47) так как количество строк первого диапазона данных(G10:G29) не постоянно, но кратно 4. В приведенном примере необходимо определить сумму каждой четвертой ячейки диапазона (G35:G47), но как указать в формуле эти границы данных и №строки зная, что последняя строка выделенного диапазона для объединенной ячейки(F36) определяется как - .Row + .MergeArea.Rows.Count-1 , а первая -.Row -1 не знаю.
|
06.05.2013, 11:57 | #4 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
Код:
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
07.05.2013, 03:07 | #5 |
Форумчанин
Регистрация: 11.08.2009
Сообщений: 135
|
Если в коде от IgorGO строчку s = s + cells(31+r*4, 7) заменить на s = s + cells(.Rows-1+r*4, 7) - все работает. Но теперь(я так думаю) для пересчета, в случае изменения одного из слагаемых, этот код необходимо вынести в отдельный макрос и организовать срабатывание его по наступлению события(изменение одного из значений диапазона суммирования).
Подскажите, будьте добры, как для события Worksheet_Calculate(т.к. изменение значений ячеек - результат расчета по формуле) правильно указать диапазон отслеживания изменений типа Range(Cells(.Rows-1,7),Cells(Row + .MergeArea.Rows.Count,7)) |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Построить график функции F(x) на заданном интервале с заданным шагом и вывести значения х и функции F(x) в таблицу в графическом р | Proskurina | Паскаль, Turbo Pascal, PascalABC.NET | 8 | 12.11.2012 21:57 |
Посчет сумм | banditos1603 | Visual C++ | 1 | 10.07.2012 11:53 |
Протабуляция функции с заданным шагом | Teramix | Паскаль, Turbo Pascal, PascalABC.NET | 4 | 15.02.2011 09:52 |
Delphi. упорядочить столбцы матрицы по возрастанию сумм элементов этого столбца | ДваДваВо7 | Помощь студентам | 2 | 09.02.2011 16:40 |
Суммирование ячеек с заданным шагом | valerij | Microsoft Office Excel | 10 | 10.10.2007 00:22 |