Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.01.2012, 14:05   #11
Serge 007
Участник клуба
 
Аватар для Serge 007
 
Регистрация: 15.12.2009
Сообщений: 1,448
По умолчанию

ZVI как-то объяснял...
Источник не помню, взял его объяснения и оформил статьей.
Бесплатная помощь: www.excelworld.ru
Платная помощь: serge_007.planetaexcel@mail.ru
https://yoomoney.ru: 41001419691823
Serge 007 вне форума Ответить с цитированием
Старый 30.01.2012, 14:55   #12
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

ладно поправлю и я (немного)
Цитата:
но в первом случае происходит еще и перемножение отрицательных значений, во втором только сравнение условий.
в СУММПРОИЗВ в любом случае происходит перемножение аргуметов и накопление в сумму результатов произведений.
Код:
Sub Test_2_()
  s = "=sumproduct(--(row(A:A)=row(A:A))*1)"
  t = Timer
  Cells(1, 2) = s
  Cells(1, 2) = Timer - t
  s = "=-sumproduct(-(row(A:A)=row(A:A))*1)"
  t = Timer
  Cells(2, 2) = s
  Cells(2, 2) = Timer - t
End Sub
вот такой простенький тест показал, что вторая формула вычисляется быстрее первой на 10-15%.
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 30.01.2012, 15:36   #13
Slavatron1984
Форумчанин
 
Аватар для Slavatron1984
 
Регистрация: 04.12.2011
Сообщений: 151
По умолчанию

Тестил 1 пример и второй, вроде все работало, но как подставил другие данные под шаблон, то формула показывает значение "0"... не могу понять, думал может F9 поможет...
Вложения
Тип файла: rar шаблон1.rar (19.5 Кб, 10 просмотров)
Slavatron1984 вне форума Ответить с цитированием
Старый 30.01.2012, 16:09   #14
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

э-э-э-э...
уважаемый, "Агент МаслоСоки 01 Киш" у вас в таблице "Агент МаслоСоки 01 Киш ", допишите в формулах пробел в конце или поудаляйте пробелы в данных - авось заработает.
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 30.01.2012, 16:11   #15
Serge 007
Участник клуба
 
Аватар для Serge 007
 
Регистрация: 15.12.2009
Сообщений: 1,448
По умолчанию

Сразу несколько ошибок: Пробелы в столбце С, отсутствие данных по литрам (приводит к умножению на 0). Исправил, см. вложение

Код:
=СУММПРОИЗВ((СЖПРОБЕЛЫ($C$13:$C$951)=B2)*ЕЧИСЛО(ПОИСК("Ulei de F/S ";$B$13:$B$951))*$D$13:$D$951)
Вложения
Тип файла: rar Slavatron1984.rar (13.5 Кб, 8 просмотров)
Бесплатная помощь: www.excelworld.ru
Платная помощь: serge_007.planetaexcel@mail.ru
https://yoomoney.ru: 41001419691823
Serge 007 вне форума Ответить с цитированием
Старый 30.01.2012, 17:18   #16
vikttur
Участник клуба
 
Регистрация: 16.05.2010
Сообщений: 1,249
По умолчанию

Цитата:
Сообщение от IgorGO Посмотреть сообщение
...вот такой простенький тест показал, что вторая формула вычисляется быстрее первой на 10-15%.
Выходит, я ошибался.

Хотя...
Код ниже показывает переменный результат.

Код:
Sub Test_2_()
  s = "=sumproduct(--(row(A:A)=row(A:A)),--(row(A:A)=row(A:A)),--(row(A:A)=row(A:A)),--(row(A:A)=row(A:A)))"
  t = Timer
  Cells(1, 2) = s
  Cells(1, 2) = Timer - t
  s = "=sumproduct(-(row(A:A)=row(A:A)),-(row(A:A)=row(A:A)),-(row(A:A)=row(A:A)),-(row(A:A)=row(A:A)))"
  t = Timer
  Cells(2, 2) = s
  Cells(2, 2) = Timer - t
End Sub

Последний раз редактировалось vikttur; 31.01.2012 в 01:23.
vikttur вне форума Ответить с цитированием
Старый 01.02.2012, 16:57   #17
Slavatron1984
Форумчанин
 
Аватар для Slavatron1984
 
Регистрация: 04.12.2011
Сообщений: 151
По умолчанию

СЖПРОБЕЛЫ спасибо за новую функцию...Прочитал справку, не знал о существования такой... Постараюсь найти курсы для углубленного изучения Екселя...
Slavatron1984 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
=СУММПРОИЗВ не осилил ее возможности Slavatron1984 Microsoft Office Excel 3 22.12.2011 15:17
Усложнение функции СУММПРОИЗВ alexsampler Microsoft Office Excel 2 09.11.2011 16:48
Функция Суммпроизв liienna Microsoft Office Excel 5 03.07.2011 09:50
формула суммпроизв. запись в ячейку gsg Microsoft Office Excel 3 18.11.2010 09:16
Как преоброзовать формулу,=СУММПРОИЗВ Konstantin Yu. Microsoft Office Excel 0 07.08.2009 14:18