0

我有三张桌子:

Products(ID,Name,Price) / 
Customer(ID, Name, Surname)
Buys(ID, ID_customer, ID_product)

我有一个带有子表单的表单。子表单填充了来自 Buys 表的查询,然后通过 ID_customer 连接到 Customer(ID)。ID 和 ID_customer 隐藏在子表单上。

然后我在子表单上添加了另外两个字段/控件:通过 ProductsQuery 填充的名称和 aPrice:

SELECT Products.Name, Products.Price
FROM Products
WHERE (((Products.ID)=[Forms]![PregledKupcev-Form]![NAKUPI-Subform]![ID])); 

//在这种情况下,ID 是对包含产品 ID 的子表单的控制

使用:

=DLookUp("[Name]";"[ProductsQuery]")

=DLookUp("[Price]";"[ProductsQuery]")

到目前为止一切正常,但是当我尝试对一个控件求和时(在这种情况下为价格),它给我带来了很多麻烦。

有没有办法更好地做到这一点?

然后我尝试将 aPrice 控件中的内容总结为子窗体页脚上的 PriceSum 控件:

=Sum([Forms]![PregledKupcev-Form]![NAKUPI-subform]![aPrice])

并将其转移到表格中:

=[Forms]![PregledKupcev-Form]![NAKUPI-subform]![PriceSum]

但我得到错误..

如何在子窗体的价格控制中总结值?

图片: 形式

4

1 回答 1

1

假设您的主表单有一个名为的文本框txtInvoiceNo,您可以在其中显示发票编号(或将父表链接到子表的任何字段)。

还假设您的主窗体有一个文本框txtInvoiceTotal,您希望在其中显示每个子记录的 [Price] 值的总和。

txtInvoiceTotal文本框的控制源设置为DSum()在子表(我称之为InvoiceLineItems)上执行:

=DSum("[Price]","InvoiceLineItems","InvoiceNo=" & [txtInvoiceNo])

在子表单的情况下,在父表单的文本框中After Update添加一行:.RequerytxtInvoiceTotal

Private Sub Form_AfterUpdate()
Me.Parent.txtInvoiceTotal.Requery
End Sub

看看这是否对你有用。

于 2013-03-24T12:06:09.457 回答