2012-08-29 71 views
0

有一个名为sample的表,它有两列id和id2。 id2上的一些记录用数字填充,但有些记录为空。所以我需要用与他们最近的记录相同的数字填充它们。也就是说,如果id2上的每条记录都不为空,请继续阅读下一条记录,如果id2上的每条记录都为空,则用前一条填写。我怎样才能做到这一点与VBA?使用先前记录的值更新空值表

样品

id id2 
1  100 
2  
3  500 
4  600 
5  
6  800 

sample_result

id id2 
1  100 
2  100 
3  500 
4  600 
5  600 
6  800 
+0

为什么VBA,为什么不更新查询? –

+0

只需更新查询就可以吗? – user1610952

回答

1

在访问我不知道它可以在纯SQL来完成,但我认为这应该让你接近你想要什么:

UPDATE sample AS s 
SET s.id2 = Dmax("id2", "sample", "id <" & [s].[id]) 
WHERE (((s.id2) IS NULL)); 
相关问题