MS Access 2013多个iff条件比较前一行

时间:2016-11-01 17:26:37

标签: ms-access

我之前在ms excel中做了类似的事情(但并不复杂),但我不确定如何在ms access 2013中做到这一点。

我有一个按产品编号排序的表格,可能有也可能没有重复的数字,但是一个或另一个字段可能不同。我想创建一个iff语句,在其中将两个字段(颜色和大小)与之前的产品编号进行比较,如果颜色或大小不同,则新列(更改)将显示颜色或大小。如果产品编号是新的(前一行产品编号不相同),则更改列将显示"新"。

例如

ProductNo ............颜色........尺寸............更改

12 ...................黄色.......... 3 .............尺寸< / p>

12 ...................黄色.......... 2 ............大小

43 ....................粉红.......... 3 ..............新

32 ...................橙......... 1种............颜色

32 ....................蓝色.......... 1 ............颜色< / p>

如果在访问时无法做到这一点,那么实现与此类似的方法的最佳方法是什么?如果有例子会很棒。 :)

1 个答案:

答案 0 :(得分:0)

循环播放记录集。在每次传递中保存您的变量(例如,LastColor,LastSize)并与当前记录进行比较。

(伪代码)

LastColor = "", LastSize = "", LastProduct = ""
do while not end of file
   if product <> LastProduct then 
      Change = "New"
   else
      compare color/size to last-color/size and assign value to Change
   endif
   LastColor = Color, LastSize = Size, LastProduct = Product
   move to next record
loop