IIF Record =

J

John

I'm trying to update a query expression and not having much luck.

The origional expression pulled a value from a Form and then based on that
value summed the values from another table.

Month08: Sum(IIf(Forms![Summary Reports]![Report Month]=8,[Sep]+[Oct],0))

Now I want to point this expression to another table (not a form) in order
to retrieve the value. Basically I want it to read.

Month08: Sum(IIf([Export_Data].[Month] = 8,,[Sep]+[Oct],0))

Now the Export_Data table only has one record that I am manipulating via
VBA. Any help is greatly apprechiated.

Thanks!
 
G

ghetto_banjo

there is an extra Comma in your updated expression (not sure if that
was just a typo here in the forum).

other than that, make sure you have added table Export_Data to your
query so the SQL generated can reference it. You don't need to Join
it to another table from the looks of things, but it needs to be in
the query design.
 
J

John Spencer

Two ways.

First Method (fastest)
Add the Export_Data table to your query and then you can access the field's
value. With a one record table you don't need a join.

Second method
Use the DLookup Function (probably slow)
DLookup("Month","Export_Data")

John Spencer
Access MVP 2002-2005, 2007-2010
The Hilltop Institute
University of Maryland Baltimore County
 
J

John

The DLookup method works. I used:

Month03:
Sum(IIf((DLookUp("Month","Export_Data"))=3,[Apr]+[May]+[Jun]+[Jul]+[Aug]+[Sep]+[Oct],0))

You mentioned a faster way, but when I tried. I get and error saying the
expression contains and error or is to complicated to process. I have added
the "Export_Data" table to the query. Here is what I am typing.

Month03:
Sum(IIf([Export_Data].[Month]=3,[Apr]+[May]+[Jun]+[Jul]+[Aug]+[Sep]+[Oct],0))

Can you point me in the right direction?
 
J

John Spencer

Only if you post the SQL of the query that is failing.

Please copy and post the SQL of your query.

(Possibly unneeded instructions follow)
Open the query
Select View:Sql from the Menu
Select all the text
Copy it
Paste it into the message

John Spencer
Access MVP 2002-2005, 2007-2010
The Hilltop Institute
University of Maryland Baltimore County
The DLookup method works. I used:

Month03:
Sum(IIf((DLookUp("Month","Export_Data"))=3,[Apr]+[May]+[Jun]+[Jul]+[Aug]+[Sep]+[Oct],0))

You mentioned a faster way, but when I tried. I get and error saying the
expression contains and error or is to complicated to process. I have added
the "Export_Data" table to the query. Here is what I am typing.

Month03:
Sum(IIf([Export_Data].[Month]=3,[Apr]+[May]+[Jun]+[Jul]+[Aug]+[Sep]+[Oct],0))

Can you point me in the right direction?

John said:
I'm trying to update a query expression and not having much luck.

The origional expression pulled a value from a Form and then based on that
value summed the values from another table.

Month08: Sum(IIf(Forms![Summary Reports]![Report Month]=8,[Sep]+[Oct],0))

Now I want to point this expression to another table (not a form) in order
to retrieve the value. Basically I want it to read.

Month08: Sum(IIf([Export_Data].[Month] = 8,,[Sep]+[Oct],0))

Now the Export_Data table only has one record that I am manipulating via
VBA. Any help is greatly apprechiated.

Thanks!
 
J

John W. Vinson

I'm trying to update a query expression and not having much luck.

The origional expression pulled a value from a Form and then based on that
value summed the values from another table.

Month08: Sum(IIf(Forms![Summary Reports]![Report Month]=8,[Sep]+[Oct],0))

Now I want to point this expression to another table (not a form) in order
to retrieve the value. Basically I want it to read.

Month08: Sum(IIf([Export_Data].[Month] = 8,,[Sep]+[Oct],0))

Now the Export_Data table only has one record that I am manipulating via
VBA. Any help is greatly apprechiated.

Thanks!

What's the context? What's the structure of your table? Is this drawing from a
table, or from a crosstab query, or a spreadsheet, or what? Because if it's a
table, it's badly in need of normalization!
 

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