Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.worksheet.functions
external usenet poster
 
Posts: 6
Default SumProduct making things work slow

I was using DSUM to sum financial transactions based on a variety of
criteria, many of which involved dates. The problem for this is that I would
have to make a variety of tables of DSUM criteria (I apologize if I'm not
using the right terminology here) for each week, so to set the worksheet up
for an entire year would be tedious and time consuming, not to mention have a
plethera of potential for careless errors.

And so, I created a new worksheet to do the same thing using SUMPRODUCT, and
while this worksheet has the advantage of being updatable for a new week
simply by dragging an existing cell into the one below it, after entering a
new transaction, the cursor freezes for several seconds and at the bottom of
the screen it says 'calculating cells xx%' which takes time to raise to 100%.


So, in short, I have two solutions to the problem: Using DSUM makes the
worksheet hard to update, and using SUMPRODUCT makes the worksheet hard to
use. Is it simply a matter of changing a feature to allow new input while
cells are being calculated? Why is SUMPRODUCT so inefficient? Is there
another, equally mobile solution that is more efficient?

Any suggestions/similar experiences would be appreciated. Thank You.
  #2   Report Post  
Posted to microsoft.public.excel.worksheet.functions
external usenet poster
 
Posts: 6
Default The solution to every problem with excel

Is to post your problem on here and continue searching for the answer on your
own. Once you post your question and help is on its way, you will inevitably
figure it out on your own within a matter of minutes.

I can just turn off automatic cell calculation under 'options' and hit F9 to
calculate my totals, which is what I'll probably do.

Nonetheless, a more efficient formula would improve my worksheet and
suggestions are still very much appreciated.


"Adam Graham" wrote:

I was using DSUM to sum financial transactions based on a variety of
criteria, many of which involved dates. The problem for this is that I would
have to make a variety of tables of DSUM criteria (I apologize if I'm not
using the right terminology here) for each week, so to set the worksheet up
for an entire year would be tedious and time consuming, not to mention have a
plethera of potential for careless errors.

And so, I created a new worksheet to do the same thing using SUMPRODUCT, and
while this worksheet has the advantage of being updatable for a new week
simply by dragging an existing cell into the one below it, after entering a
new transaction, the cursor freezes for several seconds and at the bottom of
the screen it says 'calculating cells xx%' which takes time to raise to 100%.


So, in short, I have two solutions to the problem: Using DSUM makes the
worksheet hard to update, and using SUMPRODUCT makes the worksheet hard to
use. Is it simply a matter of changing a feature to allow new input while
cells are being calculated? Why is SUMPRODUCT so inefficient? Is there
another, equally mobile solution that is more efficient?

Any suggestions/similar experiences would be appreciated. Thank You.

  #3   Report Post  
Posted to microsoft.public.excel.worksheet.functions
external usenet poster
 
Posts: 13
Default The solution to every problem with excel

A few comments:
It would be helpful to know how many criteria fields you have. A better
choice may be =sumif or a pivot table. Sumproduct is not really a query tool
-- you can use it that way as an array function, but that's not really what
it's for. Also, you could use =sum as an array as well, but that get's tricky
too. The DSUM implementation in excel was poorly thought thru way back in
the early 90s, and so you're right that you wind up with a bunch of
repetitive criteria all over the place.
Jason



"Adam Graham" wrote:

Is to post your problem on here and continue searching for the answer on your
own. Once you post your question and help is on its way, you will inevitably
figure it out on your own within a matter of minutes.

I can just turn off automatic cell calculation under 'options' and hit F9 to
calculate my totals, which is what I'll probably do.

Nonetheless, a more efficient formula would improve my worksheet and
suggestions are still very much appreciated.


"Adam Graham" wrote:

I was using DSUM to sum financial transactions based on a variety of
criteria, many of which involved dates. The problem for this is that I would
have to make a variety of tables of DSUM criteria (I apologize if I'm not
using the right terminology here) for each week, so to set the worksheet up
for an entire year would be tedious and time consuming, not to mention have a
plethera of potential for careless errors.

And so, I created a new worksheet to do the same thing using SUMPRODUCT, and
while this worksheet has the advantage of being updatable for a new week
simply by dragging an existing cell into the one below it, after entering a
new transaction, the cursor freezes for several seconds and at the bottom of
the screen it says 'calculating cells xx%' which takes time to raise to 100%.


So, in short, I have two solutions to the problem: Using DSUM makes the
worksheet hard to update, and using SUMPRODUCT makes the worksheet hard to
use. Is it simply a matter of changing a feature to allow new input while
cells are being calculated? Why is SUMPRODUCT so inefficient? Is there
another, equally mobile solution that is more efficient?

Any suggestions/similar experiences would be appreciated. Thank You.

  #4   Report Post  
Posted to microsoft.public.excel.worksheet.functions
external usenet poster
 
Posts: 605
Default SumProduct making things work slow

Some links on optimization:-

http://www.decisionmodels.com/optspeed.htm



http://www.ozgrid.com/News/GoodVsBad...edUpEvents.htm



An excerpt:



"Below is a list of what I believe to be the worst offenders for slowing down recalculations of spreadsheets.

1.. Array formulas

2.. UDFs (User-defined functions)

3.. Volatile functions

4.. Using range references in formulas that are beyond the required data scope."

Jason mentioned Pivot Table and I found the following excerpt.

"...... In particular, the use of Excel's pivot tables and sub-totals can often be used in place of potentially hundreds of formulas."

Epinn

"Adam Graham" wrote in message ...
I was using DSUM to sum financial transactions based on a variety of
criteria, many of which involved dates. The problem for this is that I would
have to make a variety of tables of DSUM criteria (I apologize if I'm not
using the right terminology here) for each week, so to set the worksheet up
for an entire year would be tedious and time consuming, not to mention have a
plethera of potential for careless errors.

And so, I created a new worksheet to do the same thing using SUMPRODUCT, and
while this worksheet has the advantage of being updatable for a new week
simply by dragging an existing cell into the one below it, after entering a
new transaction, the cursor freezes for several seconds and at the bottom of
the screen it says 'calculating cells xx%' which takes time to raise to 100%.


So, in short, I have two solutions to the problem: Using DSUM makes the
worksheet hard to update, and using SUMPRODUCT makes the worksheet hard to
use. Is it simply a matter of changing a feature to allow new input while
cells are being calculated? Why is SUMPRODUCT so inefficient? Is there
another, equally mobile solution that is more efficient?

Any suggestions/similar experiences would be appreciated. Thank You.

  #5   Report Post  
Posted to microsoft.public.excel.worksheet.functions
external usenet poster
 
Posts: 6
Default The solution to every problem with excel

I'm not familiar with pivot tables, and in reading about ways to use SUMIF
with multiple criteria, I only found out about SUMPRODUCT. This is
essentially what I'm trying to do:

Columns A, B, and C make up a list of transactions, with the date in A, the
nature of the transaction in B, and the amount in C.
A B C
Date Transaction Amount
1/25/2007 Withdraw 100
1/30/2007 Deposit 100
etc.

I want, for example, the sum of all deposits between 2 dates. I could use

=DSUM(A1:C65000,"Amount",E1:G2)

Where E1:G2 is

E F G
Date Date Transaction
1/23/2007 <1/27/2007 ="=Deposit"


But in reality, I need, for each week, one of these for Withdraws, another
for Deposits, another for payments, three more for each of three categories
of charges, and probably some more, which would be a lot of work to set up,
and would need done every time you want to update the sheet for the next
duration of time.

I could also use

=SUMPRODUCT((A2:A11I1)*(A2:A11<J1)*(B2:B11="Depos it")*(C2:C11))

Where I1 equals some date and J1 equals some date, but this slows things
down when calculating cells.

Will pivot tables work? If so, I'll definately look into it. Thanks for
all the help, everyone!



"jasonc" wrote:

A few comments:
It would be helpful to know how many criteria fields you have. A better
choice may be =sumif or a pivot table. Sumproduct is not really a query tool
-- you can use it that way as an array function, but that's not really what
it's for. Also, you could use =sum as an array as well, but that get's tricky
too. The DSUM implementation in excel was poorly thought thru way back in
the early 90s, and so you're right that you wind up with a bunch of
repetitive criteria all over the place.
Jason



"Adam Graham" wrote:

Is to post your problem on here and continue searching for the answer on your
own. Once you post your question and help is on its way, you will inevitably
figure it out on your own within a matter of minutes.

I can just turn off automatic cell calculation under 'options' and hit F9 to
calculate my totals, which is what I'll probably do.

Nonetheless, a more efficient formula would improve my worksheet and
suggestions are still very much appreciated.


"Adam Graham" wrote:

I was using DSUM to sum financial transactions based on a variety of
criteria, many of which involved dates. The problem for this is that I would
have to make a variety of tables of DSUM criteria (I apologize if I'm not
using the right terminology here) for each week, so to set the worksheet up
for an entire year would be tedious and time consuming, not to mention have a
plethera of potential for careless errors.

And so, I created a new worksheet to do the same thing using SUMPRODUCT, and
while this worksheet has the advantage of being updatable for a new week
simply by dragging an existing cell into the one below it, after entering a
new transaction, the cursor freezes for several seconds and at the bottom of
the screen it says 'calculating cells xx%' which takes time to raise to 100%.


So, in short, I have two solutions to the problem: Using DSUM makes the
worksheet hard to update, and using SUMPRODUCT makes the worksheet hard to
use. Is it simply a matter of changing a feature to allow new input while
cells are being calculated? Why is SUMPRODUCT so inefficient? Is there
another, equally mobile solution that is more efficient?

Any suggestions/similar experiences would be appreciated. Thank You.



  #6   Report Post  
Posted to microsoft.public.excel.worksheet.functions
external usenet poster
 
Posts: 605
Default The solution to every problem with excel

Based on what you described, I go for SUMPRODUCT which is versatile and dynamic. About the speed, one expert's previous advice was "take a coffee break while SUMPRODUCT crunches the numbers" - something like that.

Wonder what the gurus think.

Epinn (who learned about SUMPRODUCT before SUM and SUMIF)

"Adam Graham" wrote in message ...
I'm not familiar with pivot tables, and in reading about ways to use SUMIF
with multiple criteria, I only found out about SUMPRODUCT. This is
essentially what I'm trying to do:

Columns A, B, and C make up a list of transactions, with the date in A, the
nature of the transaction in B, and the amount in C.
A B C
Date Transaction Amount
1/25/2007 Withdraw 100
1/30/2007 Deposit 100
etc.

I want, for example, the sum of all deposits between 2 dates. I could use

=DSUM(A1:C65000,"Amount",E1:G2)

Where E1:G2 is

E F G
Date Date Transaction
1/23/2007 <1/27/2007 ="=Deposit"


But in reality, I need, for each week, one of these for Withdraws, another
for Deposits, another for payments, three more for each of three categories
of charges, and probably some more, which would be a lot of work to set up,
and would need done every time you want to update the sheet for the next
duration of time.

I could also use

=SUMPRODUCT((A2:A11I1)*(A2:A11<J1)*(B2:B11="Depos it")*(C2:C11))

Where I1 equals some date and J1 equals some date, but this slows things
down when calculating cells.

Will pivot tables work? If so, I'll definately look into it. Thanks for
all the help, everyone!



"jasonc" wrote:

A few comments:
It would be helpful to know how many criteria fields you have. A better
choice may be =sumif or a pivot table. Sumproduct is not really a query tool
-- you can use it that way as an array function, but that's not really what
it's for. Also, you could use =sum as an array as well, but that get's tricky
too. The DSUM implementation in excel was poorly thought thru way back in
the early 90s, and so you're right that you wind up with a bunch of
repetitive criteria all over the place.
Jason



"Adam Graham" wrote:

Is to post your problem on here and continue searching for the answer on your
own. Once you post your question and help is on its way, you will inevitably
figure it out on your own within a matter of minutes.

I can just turn off automatic cell calculation under 'options' and hit F9 to
calculate my totals, which is what I'll probably do.

Nonetheless, a more efficient formula would improve my worksheet and
suggestions are still very much appreciated.


"Adam Graham" wrote:

I was using DSUM to sum financial transactions based on a variety of
criteria, many of which involved dates. The problem for this is that I would
have to make a variety of tables of DSUM criteria (I apologize if I'm not
using the right terminology here) for each week, so to set the worksheet up
for an entire year would be tedious and time consuming, not to mention have a
plethera of potential for careless errors.

And so, I created a new worksheet to do the same thing using SUMPRODUCT, and
while this worksheet has the advantage of being updatable for a new week
simply by dragging an existing cell into the one below it, after entering a
new transaction, the cursor freezes for several seconds and at the bottom of
the screen it says 'calculating cells xx%' which takes time to raise to 100%.


So, in short, I have two solutions to the problem: Using DSUM makes the
worksheet hard to update, and using SUMPRODUCT makes the worksheet hard to
use. Is it simply a matter of changing a feature to allow new input while
cells are being calculated? Why is SUMPRODUCT so inefficient? Is there
another, equally mobile solution that is more efficient?

Any suggestions/similar experiences would be appreciated. Thank You.


  #7   Report Post  
Posted to microsoft.public.excel.worksheet.functions
external usenet poster
 
Posts: 605
Default The solution to every problem with excel

I am very curious how much faster it will be using

(1) DataFilterAutoFilter and
(2) SUBTOTAL()

instead of SUMPRODUCT.

However, I may prefer Excel doing the work (SUMPRODUCT) to my setting up (AutoFilter) every time. You may still need to change the criteria in the SUMPRODUCT formulae every time?

I would appreciate any feedback on speed in terms of SUBTOTAL if you care to experiment.

Epinn

"Epinn" wrote in message ...
Based on what you described, I go for SUMPRODUCT which is versatile and dynamic. About the speed, one expert's previous advice was "take a coffee break while SUMPRODUCT crunches the numbers" - something like that.

Wonder what the gurus think.

Epinn (who learned about SUMPRODUCT before SUM and SUMIF)

"Adam Graham" wrote in message ...
I'm not familiar with pivot tables, and in reading about ways to use SUMIF
with multiple criteria, I only found out about SUMPRODUCT. This is
essentially what I'm trying to do:

Columns A, B, and C make up a list of transactions, with the date in A, the
nature of the transaction in B, and the amount in C.
A B C
Date Transaction Amount
1/25/2007 Withdraw 100
1/30/2007 Deposit 100
etc.

I want, for example, the sum of all deposits between 2 dates. I could use

=DSUM(A1:C65000,"Amount",E1:G2)

Where E1:G2 is

E F G
Date Date Transaction
1/23/2007 <1/27/2007 ="=Deposit"


But in reality, I need, for each week, one of these for Withdraws, another
for Deposits, another for payments, three more for each of three categories
of charges, and probably some more, which would be a lot of work to set up,
and would need done every time you want to update the sheet for the next
duration of time.

I could also use

=SUMPRODUCT((A2:A11I1)*(A2:A11<J1)*(B2:B11="Depos it")*(C2:C11))

Where I1 equals some date and J1 equals some date, but this slows things
down when calculating cells.

Will pivot tables work? If so, I'll definately look into it. Thanks for
all the help, everyone!



"jasonc" wrote:

A few comments:
It would be helpful to know how many criteria fields you have. A better
choice may be =sumif or a pivot table. Sumproduct is not really a query tool
-- you can use it that way as an array function, but that's not really what
it's for. Also, you could use =sum as an array as well, but that get's tricky
too. The DSUM implementation in excel was poorly thought thru way back in
the early 90s, and so you're right that you wind up with a bunch of
repetitive criteria all over the place.
Jason



"Adam Graham" wrote:

Is to post your problem on here and continue searching for the answer on your
own. Once you post your question and help is on its way, you will inevitably
figure it out on your own within a matter of minutes.

I can just turn off automatic cell calculation under 'options' and hit F9 to
calculate my totals, which is what I'll probably do.

Nonetheless, a more efficient formula would improve my worksheet and
suggestions are still very much appreciated.


"Adam Graham" wrote:

I was using DSUM to sum financial transactions based on a variety of
criteria, many of which involved dates. The problem for this is that I would
have to make a variety of tables of DSUM criteria (I apologize if I'm not
using the right terminology here) for each week, so to set the worksheet up
for an entire year would be tedious and time consuming, not to mention have a
plethera of potential for careless errors.

And so, I created a new worksheet to do the same thing using SUMPRODUCT, and
while this worksheet has the advantage of being updatable for a new week
simply by dragging an existing cell into the one below it, after entering a
new transaction, the cursor freezes for several seconds and at the bottom of
the screen it says 'calculating cells xx%' which takes time to raise to 100%.


So, in short, I have two solutions to the problem: Using DSUM makes the
worksheet hard to update, and using SUMPRODUCT makes the worksheet hard to
use. Is it simply a matter of changing a feature to allow new input while
cells are being calculated? Why is SUMPRODUCT so inefficient? Is there
another, equally mobile solution that is more efficient?

Any suggestions/similar experiences would be appreciated. Thank You.



  #8   Report Post  
Posted to microsoft.public.excel.worksheet.functions
external usenet poster
 
Posts: 968
Default SumProduct making things work slow

see http://msdn2.microsoft.com/en-us/library/aa730921.aspx

and check out my website

Charles
______________________
Decision Models
FastExcel 2.3 now available
Name Manager 4.0 now available
www.DecisionModels.com

"Adam Graham" wrote in message
...
I was using DSUM to sum financial transactions based on a variety of
criteria, many of which involved dates. The problem for this is that I
would
have to make a variety of tables of DSUM criteria (I apologize if I'm not
using the right terminology here) for each week, so to set the worksheet
up
for an entire year would be tedious and time consuming, not to mention
have a
plethera of potential for careless errors.

And so, I created a new worksheet to do the same thing using SUMPRODUCT,
and
while this worksheet has the advantage of being updatable for a new week
simply by dragging an existing cell into the one below it, after entering
a
new transaction, the cursor freezes for several seconds and at the bottom
of
the screen it says 'calculating cells xx%' which takes time to raise to
100%.


So, in short, I have two solutions to the problem: Using DSUM makes the
worksheet hard to update, and using SUMPRODUCT makes the worksheet hard to
use. Is it simply a matter of changing a feature to allow new input while
cells are being calculated? Why is SUMPRODUCT so inefficient? Is there
another, equally mobile solution that is more efficient?

Any suggestions/similar experiences would be appreciated. Thank You.



Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Sumproduct issues SteveDB1 Excel Worksheet Functions 25 June 3rd 09 04:58 PM
SUMPRODUCT trouble Greg Snidow Excel Worksheet Functions 14 November 20th 06 09:42 PM
SUMPRODUCT returning incorrect result sahafi Excel Worksheet Functions 7 September 22nd 06 11:36 PM
MVP's, please help me understand SUMPRODUCT. Epinn New Users to Excel 15 September 8th 06 09:03 AM
adding two sumproduct formulas together ski2004_2005 Excel Worksheet Functions 1 November 12th 04 09:08 PM


All times are GMT +1. The time now is 08:10 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright ©2004-2025 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"