2016-11-22 114 views
0

我試圖用多個條件編寫一個DSUM表達式,但看起來似乎沒有把它做正確。不是完全精通Access,但很確定我的語法正確。我只用一個標準得到的結果是正確的。當我添加第二個表達式時,表達式會忽略這兩個標準,併爲整個列提供一筆總和。任何想法我做錯了嗎?目標是爲每個廣告系列設置一個「滾動總額」,因此每次發送新發票時都會將其添加到此總額滾動字段中。最佳的Excel等價公式:=SUMIFS(current_invoice_amount,campaign_id,A2,invoice_date,"<="&B2) A2 is campaign id and B2 is invoice date. Pretend formula is in C2.Microsoft Access表達式 - DSum多個標準 - 日期

這裏的訪問表達這是行不通的:

Expr1: DSum("[current_invoice_amount]","[tblAccountingDatabase]","[campaign_id]='" & [campaign_id] & "'" And "[invoice_date]<=#" & [invoice_date] & "#") 

這裏的表應該是什麼樣子的axample:

campaign invoice_date current_invoice_amount rolling_total 
a    1/1/16    5     5 
a    2/1/16    6     11 
a    3/1/16    4     15 
b    1/1/16    4     4 
b    2/1/16    4     8 
c    1/1/16    6     6 
+0

更改爲:「'[發票...太多報價 –

+0

非常感謝! –

回答

0

如果[CAMPAIGN_ID]字段是數字類型,不要放在單引號中。

如果[invoice_date]字段是日期類型,請不要將它放在#標籤中。

Expr1: DSum("[current_invoice_amount]","[tblAccountingDatabase]","[campaign_id]=" & [campaign_id] & " And [invoice_date]<=" & [invoice_date])