直接用update更新语句将查询中的数据更新到表,经常提示这样的错误:操作必须使用一个可更新的查询
问题解决思路:
先将查询中的数据生成到表,然后再把新生成的表中的数据更新到目标表中,最后删掉生成的表。
代码示例:表2为基于查询生成的表,采销售库存汇总是一个查询,tbl商品信息是目标表。
CurrentDb.Execute "Select 采销售库存汇总.* INTO 表2 FROM 采销售库存汇总"
CurrentDb.Execute "Update tbl商品信息 inner join 表2 on tbl商品信息.产品编号=表2.产品编号 SET tbl商品信息.库存数量 = 表2.库存数量"
CurrentDb.Execute "drop table 表2"