Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

VBA问题-如何找出同ID不同字段的变化(比较有难度的且非常有用的功能)

秋日心情  发表于:2012-12-30 12:40:40  
复制

车间有多个设备,编号分别是100~149,都有5个参数描述设备的运行性能。设备每个小时过20分都会输出最近2个时段的参数值,如下图原始表:

如何对原始数据做处理,如找出设备100在10时相比9时参数1恶化15(%),参数3恢复4(%);设备101参数2恢复2(%);设备102在10时相比9时参数1恢复2(%),参数2恶化1(%),参数3恢复5(%),等等,请各位老师帮忙看看,如何实现?

 

 

Top
hero 发表于:2013-08-29 13:42:53

建立查询1

select day,参数1 as A,参数2 as B,参数3 as C,参数4 as D,参数5 as E

from 表

where day="2012/12/30 9:00:00"

union all

select day,-1*参数1 as A,-1*参数2 as B,-1*参数3 as C,-1*参数4 as D,-1*参数5 as E

from 表

where day="2012/12/30 10:00:00"

建立查询2

select day,SUM(A),SUM(B),SUM(C),SUM(D),SUM(E)

from 查询1

group by day

 



煮江品茶 发表于:2013-08-29 14:43:01

select *,iif(参数1-Dlast("参数1","tbname","DAY<#" & [DAY] & "#")<0,"恶化" & abs(参数1-Dlast("参数1","tbname","DAY<#" & [DAY] & "#")),iif(参数1-Dlast("参数1","tbname","DAY<#" & [DAY] & "#")=0,"无变化","恢复" & (参数1-Dlast("参数1","tbname","DAY<#" & [DAY] & "#")))) as 参数1变化 from tbname

其他参数同样处理之即可。



总记录:2篇  页次:1/1 9 1 :