何が起こっているのかわかりません。
次のようなテーブルの場合:
part value
BAC 102
BS1 275
MAV 425
BAC 519
BSF 653
BAC 1072
結果は次のようになります
。
part value difference
BAC 102 102
BAC 519 417
BAC 1072 553
値が適切であることを除いて、関係はありません。
@Tom Collins の変更された関数が使用されました。
Function GetDiff(CurrPart As String, CurrValue As Long) As Long
Static LastPart As String
Static LastValue As Long
If CurrPart <> LastPart Then
LastValue = 0
LastPart = CurrPart
End If
If LastValue = CurrValue Then
GetDiff = CurrValue
Else
GetDiff = CurrValue - LastValue
LastValue = CurrValue
End If
End Function
関数は問題なく動作することがわかりましたが、結果をレポートに配置すると奇妙なことが起こり、クエリの最初の値が間違って表示され、クリックすると正しく表示されます。また、別の奇妙なことは、間違った値が表示されたフィールドの平均が必要な場合、正しい平均が表示され、間違った値をクリックしても平均が変わらないことです。
なぜこれが起こっているのか、またどのように対処できるのでしょうか?