办公室访问一个字段

时间:2017-03-31 03:09:51

标签: ms-access

请帮助,如何将一行中的值从一行减去另一行,例如: from this field

我希望它变成这样: the values from total substract from each row

2 个答案:

答案 0 :(得分:1)

这个问题不是很清楚,但我已经给出了你要求的内容。 这将把第一个总数放在NO = 1的行中,然后在NO增加时减少总数。

(Select Total from table1 where Date1 = (Select Min(NO) from Table1))-IIf([No]=1,0,(DSum("[Total]","[Table1]","[NO]<=" & [NO] & " AND [NO]<>1")))

将此添加为表格查询中的最后一列。您必须将“Table1”替换为您的表名,并且您应该将列名更改为与NO和Date不同的名称,因为这些名称用于Access中的其他内容。

答案 1 :(得分:0)

存储数据的方式可能会导致这种情况无法实现,因为无法区分哪些记录应从哪些记录中减去。假设将有多个记录被视为正(增加)条目。选项:

  1. 将记录标识为“增加”或“减少”的另一个字段

  2. 输入要减去负数的值

  3. 无论您选择哪种方式,报表都是显示运行余额的最简单方法,因为报表上的文本框具有RunningSum属性。

    但是,如果这些记录不是传入和传出的交易,而您真正想要的是每条记录从之前的数据中获取值并减去,那么请查看Stackoverlow - get previous value

    为什么用Kmh / mph命名字段,这些值显然不是Kmh / mph,它们看起来像里程表读数。更好的字段名称可能是OldOdometer,NewOdometer。里程表读数会增加而不是减少。为什么你需要添加新旧?这个数据到底是什么?