0
- 08.02.2013 - 12:19
|
Подскажите как упростить формулу Excel : =B5*B6+C5*C6+D5*D6+E5*E6+F5*F6+G5*G6+H5*H6+I5*I6+J 5*J6+K5*K6+L5*L6+M5*M6 ... | |
1
- 08.02.2013 - 13:00
| =СУММПРОИЗВ(B5:K5;M6:M6) | |
2
- 08.02.2013 - 13:02
|
2) Или формулой массива, но это чуть сложнее. 3) или пользовательской VBA-функцией, это еще чуть сложнее | |
3
- 08.02.2013 - 13:03
| упс, =СУММПРОИЗВ(B5:K5;B6:K6) | |
4
- 08.02.2013 - 14:59
| Спасибо большое! | |
5
- 09.02.2013 - 21:56
| rock1 - не за что! Обращайтесь. Excel и Gin - "родныя стяхии"... | |
6
- 09.02.2013 - 22:48
| 5-economist >у меня шеф недавно-показательно за час в экселе сделал решение задачи, над которой несколько дней "бились ребята грудью" в сишарпе) | |
7
- 10.02.2013 - 10:48
| Фанат NASCAR - неудивительно, т.к. только Excel+VBA дает среду разработки, систему визуального контроля переменных в листах книги, в них же и интерфейс и систему ввода-вывода - в одном флаконе, причем с размытыми границами каждой из подсистем. Часто сталкиваюсь с тем, что набросок программы люди делают В Excel+VBA, а потом уже переносят его во что-то серьезнее... | |
banned 8
- 10.02.2013 - 11:41
| набросок программы люди делают В Excel+VBA, а потом уже переносят его во что-то серьезнее... http://www.youtube.com/watch?feature...&v=RV6uiZj0FHM http://www.gamasutra.com/view/featur...ionary_3d_.php :) | |
9
- 10.02.2013 - 15:40
|
economist, а можно ли упростить такую формулу (там значений 15 где-то): =B6*(140*VLOOKUP(C6;level.A2:level.B21;2)/100)+D6*(208*VLOOKUP(E6;level.A2:level.B21;2)/100)+F6*(531*VLOOKUP(G6;level.A2:level.B21;2)/100) ... | |
10
- 10.02.2013 - 18:50
|
Технолог - ~6-)) ... rock1 - в упрощении формул должен быть мотив - какой он в этом случае? Чтобы помочь - нужно удалить в файле имя level - и по новой запостить сюда формулу. А tit лучше выложить куда-нить файл, без персональных данных. ... Кстати, стиль написания формул выдает непрофи - в функции VLOOKUP (она же ВПР) - нельзя в 99,99% случаев обходиться без третьего аргумента со значением False (ЛОЖЬ). Или это вообще не Excel, а OpenOffice Calc. Похоже на стиль работы "программистов" - некоей касты сисадминов, которых просят иногда помочь в Excel... | |
11
- 10.02.2013 - 22:17
|
Мотив простой: надо вводить вручную в формулу много значений до буквы y, а потом все это еще много раз вводить в другие строки. (Автоперенос формулы к сожалению нормально не работает) Это действительно OpenOffice Calc, а стиль - "гуманитарно-совещательный" :) Т.е. даже математики в ВУЗе не было )) Ссылка на файл: https://dl.dropbox.com/u/53618353/123.xls Там вычисляются значения в красном столбике | |
12
- 11.02.2013 - 08:05
|
(Автоперенос формулы к сожалению нормально не работает) - это называется автозаполнение. Ну в общем по-порядку: 0) В каждой серьезной таблице должна быть шапка (заголовки столбцов), это очень упрощает ее понимание. 1) Стоит общая задача расчета полинома/многочлена, учитывающего весовые коэффициенты и оценки (баллы от 1 до 20). 2) Формула многочлена (ФМЧ) объемна, чтобы уменьшить вероятность ошибки - все весовые коэффициенты стоит вынести в отдельную строку (2-ю) и ссылаться в ФМЧ на нее. Чтобы при копировании (автозаполнении) формулы ссылки на весовые коэффициенты не слетали - ссылаться надо АБСОЛЮТНО, т.е. не +(B2*VLOOKUP(... а +($B$2*VLOOKUP(... Абсолютные ссылки, кстати, вводятся в OO Calc нажатием Shift+F4, в Excel - F4 (циклически) Точно так же стоит на листе level область A2:B21 сделать именованным диапазоном (напр BALL) - для этого надо его выделить, а затем впечатать имя в поле ввода в лев-верхн углу листа. В этом случае ссылка на диапазон становится абсолютной: =B3*(44*VLOOKUP(C3;BALL;2)/100) След-но одну ФМЧ можно тупо "проятнуть" вниз. Делитель /100 можно превратить во множитель *0,01 и вынести за скобки. В итоге получится что-то компактное вроде: =(B3*($B$2*VLOOKUP($C$3;BALL;2)+D3*($D$2*VLOOKUP(E 3;BALL)+F3*($F$2*VLOOKUP(...))*0,01 Компактнее чем это сделать не получится... | |
| Интернет-форум Краснодарского края и Краснодара |