[Last Call] Learn about multicloud storage options and how to improve your company's cloud strategy. Register Now

x
?
Solved

Can I Use 2 Dsum and multiple criteria in one Control Source statement.

Posted on 2008-10-14
20
Medium Priority
?
248 Views
Last Modified: 2013-11-28
Hi Experts,

Below is the statement that I use on a control source of a text box (It all works fine Thanks Experts),

=DSum("[money received]","payments","[contract id]='" & [Forms]![contract payments]![contract Id] & "' and [Payment type] =7")

My question is can i add to this to this;  to minus the result of another Dsum calculation such as...

"Fisrst part as above") - Dsum("[money received]","payments","[contract id]='" & [Forms]![contract payments]![contract Id] & "' and [Payment type] =6") and  or [Payment type] =5"))

Hope this makes sense.
0
Comment
Question by:citywide
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 9
  • 7
  • 4
20 Comments
 
LVL 75
ID: 22718249
Yes sure ... did you try it ?

mx
0
 

Author Comment

by:citywide
ID: 22718292
Hi DatabaseMX, (Thx for previous help)

Not as yet I'm not sure of the correct syntax.... Can you help with this.
0
 
LVL 75
ID: 22718305

You're Wecome.

"Not as yet I'm not sure of the correct syntax.."

I thought Cap's solution was working ?

mx
0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 

Author Comment

by:citywide
ID: 22718314
Cap's solution did work, I am now looking to at the extra DSUM and extra criteria.
0
 
LVL 75
ID: 22718344
ok ... well ...

"First part as above") - Dsum("[money received]","payments","[contract id]=" & Chr(34) & [Forms]![contract payments]![contract Id] & Chr(34) & " and ( [Payment type] =6   or [Payment type] =5"))

Chr(34) is a double quote - for clarity in posting.

mx
0
 
LVL 75
ID: 22718405
Ignore the last post ...

mx
0
 
LVL 75
ID: 22718426
ok .... try this:

First DSum (...) - DSum("[money received]", "payments", "[contract id]=" & Chr(34) & [Forms]![contract payments]![contract Id] & Chr(34) & " and ( " & [Payment type] = 6 Or [Payment type] = 5 & ")")

mx
0
 

Author Comment

by:citywide
ID: 22718469
Thx Mx

As per your previous I have:
=DSum("[money received]","payments","[contract id]='" & [Forms]![contract payments]![contract Id] & "' and [Payment type] =7")-DSum("[money received]","payments","[contract id]=" & '" & [Forms]![contract payments]![contract Id] & "' & " and ( " & [Payment type]=1 Or [Payment type]=6 & ")")

Now I'm back to getting the #Error...
0
 
LVL 75
ID: 22718487
You changed what I posted and used Single Quotes.   Use what I posted.  I tried

Dim x

x = DSum("[money received]", "payments", "[contract id]=" & Chr(34) & [Forms]![contract payments]![contract Id] & Chr(34) & " and ( " & [Payment type] = 6 Or [Payment type] = 5 & ")")

and that compiles correctly.  So try:

=DSum("[money received]","payments","[contract id]='" & [Forms]![contract payments]![contract Id] & "' and [Payment type] =7")  -    DSum("[money received]", "payments", "[contract id]=" & Chr(34) & [Forms]![contract payments]![contract Id] & Chr(34) & " and ( " & [Payment type] = 6 Or [Payment type] = 5 & ")")

I need to zzzzzz ...

mx
0
 
LVL 75
ID: 22718495
And what I just posted with the two DSum's compiles correctly in vba code.

mx
0
 

Author Comment

by:citywide
ID: 22718741
Cheers mx,

will try it and let you know. Thanks again.

zzzzzz.... well
0
 

Author Comment

by:citywide
ID: 22718871
I have tried it as it was posted;

=DSum("[money received]","payments","[contract id]='" & [Forms]![contract payments]![contract Id] & "' and [Payment type] =7")-DSum("[money received]","payments","[contract id]=" & Chr(34) & [Forms]![contract payments]![contract Id] & Chr(34) & " and ( " & [Payment type]=6 Or [Payment type]=1 & ")")

I still get the #error.
0
 
LVL 120

Accepted Solution

by:
Rey Obrero (Capricorn1) earned 2000 total points
ID: 22719849


=DSum("[money received]","payments","[contract id]='" & [Forms]![contract payments]![contract Id] & "' and [Payment type] =7")-DSum("[money received]","payments","[contract id]='" &  [Forms]![contract payments]![contract Id] & "' and  [Payment type]=6 Or [Payment type]=1")

or you can also use this


=DSum("[money received]","payments","[contract id]='" & [Forms]![contract payments]![contract Id] & "' and [Payment type] =7")-DSum("[money received]","payments","[contract id]='" &  [Forms]![contract payments]![contract Id] & "' and  [Payment type] In (6,1)")
0
 

Author Comment

by:citywide
ID: 22721612
Hi Capricorn,

Is the '"  just a single  quotation mark ' followed by double quotation marks "......

What is Chr(34) referred to by mx....

Cheers again for your help..
0
 
LVL 120

Expert Comment

by:Rey Obrero (Capricorn1)
ID: 22721693
Is the '"  just a single  quotation mark ' followed by double quotation marks "......
yes..

the format is

Single quote Double quote  &  stringvariable  &  Double quote Single quote

           '               "                &  stringvariable  &           "                '


Chr(34) is ascii dec value for  Double quote ( " )
0
 
LVL 120

Expert Comment

by:Rey Obrero (Capricorn1)
ID: 22721717


the format is

Single quote Double quote  &  stringvariable  &  Double quote Single quote

                      '                               "                                &  stringvariable  &                        "                  '
0
 

Author Comment

by:citywide
ID: 22721883
Now if I can expand a little more and try and give you a picture for the end result I am looking for that I have tried to piece together over the last couple of questions, hope you guys can help.

Basically I am trying to calculate an end figure based on a couple of things firstly these are the types of payments that can be entered for each entry;
1 - Adj
2 - CCI
3 - CMV
4 - GAP
5 - Wty
6 - Rbt
7 - Bkg
8 - Com

Now to get a final figure for say GAP I could have a number of criteria such as;
1 - I could enter a money rec $700 for payment Type GAP
2- I could enter a money received as -$100 payment type Adjustment
3 - I could enter a money received as -$250 payment type Rebate

One big problem I face is that both payment types Rbt and Adj could relate to any of the other payment types so I could have a rbt that needs to be deducted from a GAP payment type as well as another enrtry for a Rbt against the CMV payment type.
Now the only other field that helps us determine which Rbt or Adj is for which is a company field that is in the master form and the subform.
 
Therfore I would want to acheive is a total of each payment type not incl Rbt or Adj, but for each other payment type that takes into account any rbt's or Adj related by the company field to each of the other 6 fields.

Does this make any sense.....

Hope you can help.
 
0
 

Author Comment

by:citywide
ID: 22721948
Sorry quick typo fixes....

Now to get a final figure for say GAP I could have a number of criteria such as;
1 - I could enter a money rec $700 for payment Type GAP
2- I could enter a money received as -$100 payment type Adjustment
3 - I could enter a money received as -$250 payment type Rebate

I would like the text box that I have the statement to date in to return a value of $350. for the above example...



Therefore I would want to acheive is a total of each payment type not incl Rbt or Adj, but for each other payment type that takes into account any rbt's or Adj related by the company field to each of the other 6 Payment Types.
0
 
LVL 120

Expert Comment

by:Rey Obrero (Capricorn1)
ID: 22722042

citywide,

if your original problem was resolved, accept the suggestion that solved the problem.

for other requirements, post another q.

most experts, i for one, does not like to be dragged to a series of problems in a single thread...
0
 

Author Comment

by:citywide
ID: 22722120
np.

Sorry for that it was more so that I myself understand each step that I was trying to acheive.

I will award the points on this question now and will repost my last post as a new question now it would be great if you could take a look at it for me, I appreciate all your help.
0

Featured Post

VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Preparing an email is something we should all take special care with – especially when the email is for somebody you may not know very well. The pressures of everyday working life stacked with a hectic office environment can make this a real challen…
This article describes a method of delivering Word templates for use in merging Access data to Word documents, that requires no computer knowledge on the part of the recipient -- the templates are saved in table fields, and are extracted and install…
Learn how to number pages in an Access report over each group. Activate two pass printing by referencing the pages property: Add code to the Page Footers OnFormat event to capture the pages as there occur for each group. Use the pages property to …
With Secure Portal Encryption, the recipient is sent a link to their email address directing them to the email laundry delivery page. From there, the recipient will be required to enter a user name and password to enter the page. Once the recipient …

650 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question