Single statement database/range processing with criteria

G

Guest

Although Excel provides Database processing (DSUM etc) it does so with
"external" criteria - "external" meaning that they are defined in cells
outside the Database function.

I have seen posts that process ranges with really complex criteria defined
in a single statement. Having all search conditions within the cell statement
is preferable as far as I am concerned as it results in less messy
spreadsheets. Can anyone provide links to articles describing ways to process
ranges/databases with criteria such as the following in a single statement?

Capitalized words represent Fieldnames (column headings).

- find in PRICES_DATABASE the PRICE where ITEM = Search_Item and Search_Date
is >= to PRICE_VALID_FROM and <= to PRICE_VALID_TO

- sum all AMOUNT in TRANSACTIONS_DATABASE where YEAR = 2006 and TRNS_TYPE =
"Sales"

Thanks in advance
 
T

Tom Ogilvy

If you want to extract the records or hide non conforming records, then it
would be unlikely that a worksheet function would be the usual approach. If
you want to sum the prices

=Sumproduct(--(Item=Search_Item),--(Price_Valid_From<=Search_Date),--(Price_
Valid_To>=Search_Date),Prices))

=Sumproduct(--(Year(DateColumn)=2006),--(Trans_Type="Sales"),Amount)


These could be defined names (insert=>Name=>Define) or replaced by actual
ranges.
 
G

Guest

Tom I don't want to extract or hide lines. I only need to sum values in a
database and locate a value (as is the price of an item on a given date).
Anyway, the summing method would be applicable to locate a value provided
there is only one matching record.

What I do not see in your answer, unfortunately, is a way to provide a
database range and the appropriate column headings (fieldnames ??) instead of
having to set up named ranges for every column I wish to use as a criterion.
I guess it's because we are using a range function instead of a database
function and only databases use the first row as field names. Any comment on
this is welcome.

I guess I'll stick to the SUMPRODUCT function. One last thing though...
When/why do we use the "--" outside the parentheses? What does it stand for?
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top