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

Вход

Регистрация

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

 

= Мир MS Excel/Сумма данных из массива по текущему месяцу - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Сумма данных из массива по текущему месяцу
Kirsh Дата: Четверг, 23.05.2013, 00:30 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 43
Репутация: 0 ±
Замечаний: 0% ±

Добрый день!
Помогите пожалуйста оптимизировать расчеты. 1 вопрос: я формирую таблицу учета, скажите, можно ли как-то упростить порядок вычисления данных в ячейках S4:S7, исключить промежуточные вычисления в строке 1., пробовал использовать следующую формулу в ячейке S5: =СУММЕСЛИ(T$1:AM$1;"(МЕСЯЦ(T2)=МЕСЯЦ(СЕГОДНЯ())";T5:AM5) , но она не работает, подскажите плз где я ошибся?
2 вопрос: можно ли в массиве T:АМ (в том, что выделен зеленым) использовать одновременно числовые значения и проценты, бывают ли надстройки, способные распознавать числа и проценты и в зависимости от этого по разному их считать?

Заранее спасибо!
С уважением.
К сообщению приложен файл: 7991667.xlsx (37.5 Kb)
 
Ответить
СообщениеДобрый день!
Помогите пожалуйста оптимизировать расчеты. 1 вопрос: я формирую таблицу учета, скажите, можно ли как-то упростить порядок вычисления данных в ячейках S4:S7, исключить промежуточные вычисления в строке 1., пробовал использовать следующую формулу в ячейке S5: =СУММЕСЛИ(T$1:AM$1;"(МЕСЯЦ(T2)=МЕСЯЦ(СЕГОДНЯ())";T5:AM5) , но она не работает, подскажите плз где я ошибся?
2 вопрос: можно ли в массиве T:АМ (в том, что выделен зеленым) использовать одновременно числовые значения и проценты, бывают ли надстройки, способные распознавать числа и проценты и в зависимости от этого по разному их считать?

Заранее спасибо!
С уважением.

Автор - Kirsh
Дата добавления - 23.05.2013 в 00:30
_Boroda_ Дата: Четверг, 23.05.2013, 01:13 | Сообщение № 2
Группа: Админы
Ранг: Местный житель
Сообщений: 16719
Репутация: 6505 ±
Замечаний: ±

2003; 2007; 2010; 2013 RUS
Код
=СУММПРОИЗВ((МЕСЯЦ(T$2:AM$2)=МЕСЯЦ(СЕГОДНЯ()))*T4:AM4)

вопрос 2 не понял


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
Сообщение
Код
=СУММПРОИЗВ((МЕСЯЦ(T$2:AM$2)=МЕСЯЦ(СЕГОДНЯ()))*T4:AM4)

вопрос 2 не понял

Автор - _Boroda_
Дата добавления - 23.05.2013 в 01:13
AndreTM Дата: Четверг, 23.05.2013, 01:51 | Сообщение № 3
Группа: Друзья
Ранг: Старожил
Сообщений: 1762
Репутация: 501 ±
Замечаний: 0% ±

2003 & 2010
1. Лучше на СЕГОДНЯ() не ориентироваться - а предусмотреть ячейку (например, $S$1) с датой, на месяц которой рассчитываются показатели.
Ну и в столбце R напутали - там надо брать не разность, а тоже предыдущую формулу от _Boroda_, только знак будет "<"

2. Числовое значение - счётное, то есть некая мера, которая самодостаточна для исчисления (не будем вдаваться в подробности понятия поля и операций над ним smile ) Процент - понятие отношения чего-либо к чему-либо, поэтому по отдельности употреблённые, например "20%" - ни о чем не говорят. Можно говорить только о "проценте от чего либо".
С другой стороны, вам в такие дебри вникать ни к чему. Я примерно понял, что вы хотели сказать:
- либо вы желаете, чтобы при внесении в ячейки T15:AMxx каких-либо данных - программа распознавала, что именно введено (число или процент) и соответственно проставляла значение (либо само число, либо число, рассчитанное как процент от чего-то)
- либо вы желаете, чтобы в ячейках T15:AMxx хранились данные в виде либо "чисел", либо "процентов", а при составлении свода в T4:AM7 - формулы правильно вычисляли именно суммы (т.е. заменяли "проценты" их значениями)

А еще забыл... Упростите формулы в T4:AM7 - там необязательно два раза проверять условие:
Код
T4: =СУММПРОИЗВ(($M$15:$M$1279=$P4)*$J$15:$J$1279*T$15:T$1279)


Skype: andre.tm.007
Donate: Qiwi: 9517375010


Сообщение отредактировал AndreTM - Четверг, 23.05.2013, 09:31
 
Ответить
Сообщение1. Лучше на СЕГОДНЯ() не ориентироваться - а предусмотреть ячейку (например, $S$1) с датой, на месяц которой рассчитываются показатели.
Ну и в столбце R напутали - там надо брать не разность, а тоже предыдущую формулу от _Boroda_, только знак будет "<"

2. Числовое значение - счётное, то есть некая мера, которая самодостаточна для исчисления (не будем вдаваться в подробности понятия поля и операций над ним smile ) Процент - понятие отношения чего-либо к чему-либо, поэтому по отдельности употреблённые, например "20%" - ни о чем не говорят. Можно говорить только о "проценте от чего либо".
С другой стороны, вам в такие дебри вникать ни к чему. Я примерно понял, что вы хотели сказать:
- либо вы желаете, чтобы при внесении в ячейки T15:AMxx каких-либо данных - программа распознавала, что именно введено (число или процент) и соответственно проставляла значение (либо само число, либо число, рассчитанное как процент от чего-то)
- либо вы желаете, чтобы в ячейках T15:AMxx хранились данные в виде либо "чисел", либо "процентов", а при составлении свода в T4:AM7 - формулы правильно вычисляли именно суммы (т.е. заменяли "проценты" их значениями)

А еще забыл... Упростите формулы в T4:AM7 - там необязательно два раза проверять условие:
Код
T4: =СУММПРОИЗВ(($M$15:$M$1279=$P4)*$J$15:$J$1279*T$15:T$1279)

Автор - AndreTM
Дата добавления - 23.05.2013 в 01:51
Kirsh Дата: Четверг, 23.05.2013, 08:16 | Сообщение № 4
Группа: Пользователи
Ранг: Новичок
Сообщений: 43
Репутация: 0 ±
Замечаний: 0% ±

2 Boroda, Спасибо большое, все работает как надо..
2 AndreTM, спасибо за упрощение формулы, Вы правильно поняли, чего я хочу от таблицы: чтобы при внесении в ячейки T15:AMxx каких-либо данных - программа распознавала, что именно введено (число или процент), и в зависимости от этого прописать формулу, на подобие =Если(Массив="%";Формула 1;Формула 2)...
Как думаете, такое реально сделать? без написания макроса?


Сообщение отредактировал Kirsh - Четверг, 23.05.2013, 08:22
 
Ответить
Сообщение2 Boroda, Спасибо большое, все работает как надо..
2 AndreTM, спасибо за упрощение формулы, Вы правильно поняли, чего я хочу от таблицы: чтобы при внесении в ячейки T15:AMxx каких-либо данных - программа распознавала, что именно введено (число или процент), и в зависимости от этого прописать формулу, на подобие =Если(Массив="%";Формула 1;Формула 2)...
Как думаете, такое реально сделать? без написания макроса?

Автор - Kirsh
Дата добавления - 23.05.2013 в 08:16
Michael_S Дата: Четверг, 23.05.2013, 09:00 | Сообщение № 5
Группа: Друзья
Ранг: Старожил
Сообщений: 2012
Репутация: 373 ±
Замечаний: 0% ±

Excel2016
Код
=если(ячейка("формат";A1)="P0";формула_Для_%;другая_формула)
с массивами не работает.


Сообщение отредактировал Michael_S - Четверг, 23.05.2013, 09:03
 
Ответить
Сообщение
Код
=если(ячейка("формат";A1)="P0";формула_Для_%;другая_формула)
с массивами не работает.

Автор - Michael_S
Дата добавления - 23.05.2013 в 09:00
AndreTM Дата: Четверг, 23.05.2013, 09:16 | Сообщение № 6
Группа: Друзья
Ранг: Старожил
Сообщений: 1762
Репутация: 501 ±
Замечаний: 0% ±

2003 & 2010
Цитата (Kirsh)
чтобы при внесении в ячейки T15:AMxx каких-либо данных - программа распознавала, что именно введено (число или процент), и в зависимости от этого прописать формулу, на подобие =Если(Массив="%";Формула 1;Формула 2)...
Не-не-не... Это вы как-то неверно (или неполно) формулируете.
Я же вас спросил - "что вы хотите хранить в T15:AMxx"? Ваш ответ должен быть - или "числа" или "некие значения, обозначающие или число, или процент". От этого ведь и зависит, каким методом и с помощью чего можно это сделать... И да, если пишутся какие-то "проценты" - то от чего, от какого значения? - вы же молчите, аки белорусский партизан. Обычно принято "ручками" (без формул и макросов) рисовать в файле, что и как вам хочется видеть - и показывать этот файл.


Skype: andre.tm.007
Donate: Qiwi: 9517375010


Сообщение отредактировал AndreTM - Четверг, 23.05.2013, 09:22
 
Ответить
Сообщение
Цитата (Kirsh)
чтобы при внесении в ячейки T15:AMxx каких-либо данных - программа распознавала, что именно введено (число или процент), и в зависимости от этого прописать формулу, на подобие =Если(Массив="%";Формула 1;Формула 2)...
Не-не-не... Это вы как-то неверно (или неполно) формулируете.
Я же вас спросил - "что вы хотите хранить в T15:AMxx"? Ваш ответ должен быть - или "числа" или "некие значения, обозначающие или число, или процент". От этого ведь и зависит, каким методом и с помощью чего можно это сделать... И да, если пишутся какие-то "проценты" - то от чего, от какого значения? - вы же молчите, аки белорусский партизан. Обычно принято "ручками" (без формул и макросов) рисовать в файле, что и как вам хочется видеть - и показывать этот файл.

Автор - AndreTM
Дата добавления - 23.05.2013 в 09:16
Serge_007 Дата: Четверг, 23.05.2013, 09:44 | Сообщение № 7
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
Цитата (Michael_S)
с массивами не работает

Работает, вопреки справке Excel smile

Функциями выбрать дату из массива чисел и дат


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
Сообщение
Цитата (Michael_S)
с массивами не работает

Работает, вопреки справке Excel smile

Функциями выбрать дату из массива чисел и дат

Автор - Serge_007
Дата добавления - 23.05.2013 в 09:44
Kirsh Дата: Четверг, 23.05.2013, 11:49 | Сообщение № 8
Группа: Пользователи
Ранг: Новичок
Сообщений: 43
Репутация: 0 ±
Замечаний: 0% ±

Цитата (AndreTM)
Я же вас спросил - "что вы хотите хранить в T15:AMxx"? Ваш ответ должен быть - или "числа" или "некие значения, обозначающие или число, или процент".

В зависимости от возможности поставить точные числа (например количество погонных метров сделанных работ) будут стоять числа, если же это не возможно (например бывают сложно-составные элементы декора) тогда буду ставить % от всего элемента. (указал в примере и выделил красным)...
Данная ситуация еще усложняется тем, что проценты вносятся накопительным итогом (например 1 нед. апреля - 10%, 2 неделя апреля - 15%, 3 неделя апреля - 20%, 4 неделя апреля - 25%) в итоге всего за апрель сделано 25%...
К сообщению приложен файл: 7991667-1-.xlsx (37.4 Kb)
 
Ответить
Сообщение
Цитата (AndreTM)
Я же вас спросил - "что вы хотите хранить в T15:AMxx"? Ваш ответ должен быть - или "числа" или "некие значения, обозначающие или число, или процент".

В зависимости от возможности поставить точные числа (например количество погонных метров сделанных работ) будут стоять числа, если же это не возможно (например бывают сложно-составные элементы декора) тогда буду ставить % от всего элемента. (указал в примере и выделил красным)...
Данная ситуация еще усложняется тем, что проценты вносятся накопительным итогом (например 1 нед. апреля - 10%, 2 неделя апреля - 15%, 3 неделя апреля - 20%, 4 неделя апреля - 25%) в итоге всего за апрель сделано 25%...

Автор - Kirsh
Дата добавления - 23.05.2013 в 11:49
Serge_007 Дата: Четверг, 23.05.2013, 12:04 | Сообщение № 9
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
Kirsh, если Вы хотите что бы при вводе в ячейку чего-либо Excel понимал что Вы вводите именно %, а не число, то необходимо Excel'ю объяснить алгоритм выбора формата. Для этого надо конкретизировать случаи которые Вы определяете как "сложно-составные элементы декора" или иные, при которых необходим %-й формат и прописать их в формуле/макросе/УФ


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
СообщениеKirsh, если Вы хотите что бы при вводе в ячейку чего-либо Excel понимал что Вы вводите именно %, а не число, то необходимо Excel'ю объяснить алгоритм выбора формата. Для этого надо конкретизировать случаи которые Вы определяете как "сложно-составные элементы декора" или иные, при которых необходим %-й формат и прописать их в формуле/макросе/УФ

Автор - Serge_007
Дата добавления - 23.05.2013 в 12:04
Kirsh Дата: Четверг, 23.05.2013, 12:17 | Сообщение № 10
Группа: Пользователи
Ранг: Новичок
Сообщений: 43
Репутация: 0 ±
Замечаний: 0% ±

Цитата (Serge_007)
Для этого надо конкретизировать случаи которые Вы определяете как "сложно-составные элементы декора" или иные, при которых необходим %-й формат


Правильно ли я вас понял, вы предлагаете ввести "маркер" учета выполнения, например "%" для сложных случаев и, например "ед." для простых?
 
Ответить
Сообщение
Цитата (Serge_007)
Для этого надо конкретизировать случаи которые Вы определяете как "сложно-составные элементы декора" или иные, при которых необходим %-й формат


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

Автор - Kirsh
Дата добавления - 23.05.2013 в 12:17
Kirsh Дата: Четверг, 23.05.2013, 13:39 | Сообщение № 11
Группа: Пользователи
Ранг: Новичок
Сообщений: 43
Репутация: 0 ±
Замечаний: 0% ±

Попробовал сделать через =ЕСЛИ(ЯЧЕЙКА("формат"; T31:AM31)=ЯЧЕЙКА("формат";Q31);"%";"Ед.")
Работает только для с первой ячейкой, но не со всей строкой (пример прикрепил), и автоматически не обновляется...
К сообщению приложен файл: 9285837.xlsx (38.0 Kb)
 
Ответить
СообщениеПопробовал сделать через =ЕСЛИ(ЯЧЕЙКА("формат"; T31:AM31)=ЯЧЕЙКА("формат";Q31);"%";"Ед.")
Работает только для с первой ячейкой, но не со всей строкой (пример прикрепил), и автоматически не обновляется...

Автор - Kirsh
Дата добавления - 23.05.2013 в 13:39
Kirsh Дата: Четверг, 23.05.2013, 14:01 | Сообщение № 12
Группа: Пользователи
Ранг: Новичок
Сообщений: 43
Репутация: 0 ±
Замечаний: 0% ±

и к тому же появляется еще один пустой столбец... ( можно ли прописать формат ячейки в формуле не ссылаясь на образец?

Т.е. можно ли прописать формулу типа =ЕСЛИ(ЯЧЕЙКА("формат"; T31:AM31)="%";"%";"ед.") где " ="%" " - обозначение процентного формата ячейки?


Сообщение отредактировал Kirsh - Четверг, 23.05.2013, 14:07
 
Ответить
Сообщениеи к тому же появляется еще один пустой столбец... ( можно ли прописать формат ячейки в формуле не ссылаясь на образец?

Т.е. можно ли прописать формулу типа =ЕСЛИ(ЯЧЕЙКА("формат"; T31:AM31)="%";"%";"ед.") где " ="%" " - обозначение процентного формата ячейки?

Автор - Kirsh
Дата добавления - 23.05.2013 в 14:01
Serge_007 Дата: Четверг, 23.05.2013, 14:19 | Сообщение № 13
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
Цитата (Kirsh)
Работает только для с первой ячейкой
Я выше давал ссылку, по которой становится очевидно что ЯЧЕЙКА() работает и с массивом

Например для Вашего примера можно посчитать кол-во ячеек с %-м форматом так:
Код
=СУММ(--(ЯЧЕЙКА("формат";СМЕЩ(S31;;Ч(ИНДЕКС(СТОЛБЕЦ(A:T);));))="P0"))

Цитата (Kirsh)
автоматически не обновляется
ЯЧЕЙКА() - функция волатильная и обновляется при каждом пересчёте листа. Другое дело что смена формата ячеек не является событием для пересчёта листа. Принудительно пересчитывайте нажатием F9

Цитата (Kirsh)
можно ли прописать формулу типа =ЕСЛИ(ЯЧЕЙКА("формат"; T31:AM31)="%"

Я уже ответил выше - да можно. Только зачем Вам указывать массив T31:AM31? Достаточно ведь одной ячейки? Или в другой месяц в этой же строке может быть уже не процент? Тогда что должна возвращать формула?

Решение, как я его вижу, во вложении
К сообщению приложен файл: Kirsh.xls (81.5 Kb)


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
Сообщение
Цитата (Kirsh)
Работает только для с первой ячейкой
Я выше давал ссылку, по которой становится очевидно что ЯЧЕЙКА() работает и с массивом

Например для Вашего примера можно посчитать кол-во ячеек с %-м форматом так:
Код
=СУММ(--(ЯЧЕЙКА("формат";СМЕЩ(S31;;Ч(ИНДЕКС(СТОЛБЕЦ(A:T);));))="P0"))

Цитата (Kirsh)
автоматически не обновляется
ЯЧЕЙКА() - функция волатильная и обновляется при каждом пересчёте листа. Другое дело что смена формата ячеек не является событием для пересчёта листа. Принудительно пересчитывайте нажатием F9

Цитата (Kirsh)
можно ли прописать формулу типа =ЕСЛИ(ЯЧЕЙКА("формат"; T31:AM31)="%"

Я уже ответил выше - да можно. Только зачем Вам указывать массив T31:AM31? Достаточно ведь одной ячейки? Или в другой месяц в этой же строке может быть уже не процент? Тогда что должна возвращать формула?

Решение, как я его вижу, во вложении

Автор - Serge_007
Дата добавления - 23.05.2013 в 14:19
AndreTM Дата: Четверг, 23.05.2013, 14:46 | Сообщение № 14
Группа: Друзья
Ранг: Старожил
Сообщений: 1762
Репутация: 501 ±
Замечаний: 0% ±

2003 & 2010
Так процент-то процент-то от чего? От суммы по договору?

Можно данные хранить как текст, а в формулах - обрабатывать уже через предварительное вычисление... Но там, ИМХО, без макросов будет не обойтись. А уж если будут макросы - то можно вообще от формул отказаться...
Но, по идее, у вас все проблемы и-за того, что вы пытаетесь загнать в одну таблицу "всё и сразу". Если бы использовать правильный подход - то таких проблем бы не было, да и тяжеленных формул - тоже.


Skype: andre.tm.007
Donate: Qiwi: 9517375010
 
Ответить
СообщениеТак процент-то процент-то от чего? От суммы по договору?

Можно данные хранить как текст, а в формулах - обрабатывать уже через предварительное вычисление... Но там, ИМХО, без макросов будет не обойтись. А уж если будут макросы - то можно вообще от формул отказаться...
Но, по идее, у вас все проблемы и-за того, что вы пытаетесь загнать в одну таблицу "всё и сразу". Если бы использовать правильный подход - то таких проблем бы не было, да и тяжеленных формул - тоже.

Автор - AndreTM
Дата добавления - 23.05.2013 в 14:46
Kirsh Дата: Пятница, 24.05.2013, 13:01 | Сообщение № 15
Группа: Пользователи
Ранг: Новичок
Сообщений: 43
Репутация: 0 ±
Замечаний: 0% ±

Спасибо всем за помощь в решении данной проблемы, особенно Serge_007, !!
 
Ответить
СообщениеСпасибо всем за помощь в решении данной проблемы, особенно Serge_007, !!

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

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