空气质量指数计算方法在Excel中VBA的实现
2014-02-24曾明智莫海萍
曾明智,韩 波,莫海萍
(北海市环境监测中心站,广西 北海 536000)
空气质量指数计算方法在Excel中VBA的实现
曾明智,韩 波,莫海萍
(北海市环境监测中心站,广西 北海 536000)
空气质量指数计算方法是目前全国各城市空气质量重要信息发布的基础,广泛应用于城市空气自动监测的空气质量评价。依据《HJ 633-2012环境空气质量指数(AQI)技术规定(试行)》发布环境空气质量指数(AQI)计算方法,利用VBA在Excel下编写宏程序,可以轻松实现空气质量日报信息的发布,使用户从手工重复性的填充和插入函数操作方式中彻底解放出来。
空气质量指数;计算工具;Excel;VBA
2013年1月以来,我国京、津、冀及东部地区出现大范围、长时间雾霾天气,一些大中城市空气质量明显下降,给人民群众生产生活带来严重影响,引起了社会各界的高度关注。自2013年1月1日起,按照国务院批准的空气质量新标准“三步走”实施方案,全国包括国家环保重点城市、模范城市在内共116个城市449个监测点位,已执行《环境空气质量标准》 (GB 3095-2012),并按《环境空气质量指数(AQI)技术规定(试行)》 (HJ 633-2012)发布环境空气质量指数(AQI),不再按《城市空气质量日报技术规定》 (总站办字 [2000]26号)发布空气污染指数(API)。方案的实施对于及时按空气质量新标准监测并发布信息,应对重污染天气,保护公众身体健康等方面发挥了重要作用。
空气质量指数(AQI),与空气污染指数(API)的定义和计算方法类似,首先收集各类主要污染物数据,使用线性插值法计算每一类空气质量分指数(IAQI),比较各类IAQI大小,并将最大值作为向公众发布的AQI。与API相比,
AQI更新了分级方案、浓度限值,并新增了评价项目PM2.5。因此,现行的API信息发布和计算方法已不能满足当前AQI计算的需要[1-5],最近有人提出用Excel计算AQI[6],该法仅限于Excel内置条件函数、公式等进行填充和插入函数的人工、半人工操作,这种计算模式,若在数据量庞大的情况下,容易出现错误,降低了AQI计算方法的可行性、准确性。为解决上述问题,笔者应用VBA语言编写嵌入式模块,开发出AQI自动化的计算方法,通过实际应用可以看出这种方法不仅对AQI计算效率和准确度高,而且可移植到空气污染指数(API)的计算工作中,具有较强的通用性和扩展性。
1 AQI计算方法
1.1 空气质量指数分级方案
AQI是定量描述空气质量状况的指数,分为六级,相对应空气质量的6个类别,其数值越大说明空气污染状况越严重,对人体健康的危害也就越大。参与空气质量指数计算的主要污染物为二氧化硫(SO2)、二氧化氮(NO2)、细颗粒物(粒径小于等于10 μm)、颗粒物(粒径小于等于2.5 μm)、一氧化碳(CO) 以及臭氧(O3),共计6个指标。日报AQI的IAQI级别及对应的污染物项目浓度限值见表1。
表1 空气质量分指数及对应的污染物项目浓度限值
1.2 空气质量分指数的计算方法
将监测点各项污染物浓度与相应的污染物浓度限值相比较,确定对应于该浓度值时空气质量分指数(IAQI)所在的指数区间,再按照插值法计算该污染物浓度的IAQI值。
污染物项目P的空气质量分指数按式(1)计算:
式中:IAQIp——污染物项目P的空气质量分项指数;Cp——污染物项目 的质量浓度;BPHi——表1中Cp相近的污染物限值的高位值;BPL0——表1中Cp相近的污染物限值的低位值;IAQIHi——表1中与BPHi对应的空气质量分指数;IAQIL0——表1中与BPL0对应的空气质量分指数。
1.3 空气质量指数级别
空气质量指数级别根据表2规定进行划分。
表2 空气质量指数、级别和类别划分
1.4 空气质量指数及首要污染物的确定方法
1.4.1 空气质量指数计算方法
空气质量指数按式(2)计算:AQI=max{IAQI1,IAQI2,IAQI3,…,IAQIn} (2)式中:AQI——空气质量分指数;n——污染物项目。
1.4.2 首要污染物及超标污染物的确定方法
空气质量分指数大于50时,最大的污染物为首要污染物,若最大的污染物为两项或两项以上时,并列为首要污染物。
2 系统设计
2.1 Excel空气日报数据表设计
新建一个Excel,按《HJ 633-2012》中表3的城市空气日报数据格式(见图1所示的截图)制作一个数据表,输入到名为“sheet1”工作表中,将表1空气质量分指数及对应的污染物项目浓度限值数据输入到名为“sheet2”的工作表(见图2所示的截图),同时将该工作薄保存一个名为“AQI日报”的Excel文件。
图1 空气质量指数日报数据格式
图2 空气质量分指数及对应的污染物项目浓度限值
2.2 程序设计
空气质量指数需要进行大量的数据运算,为了简化手工处理过程,笔者使用应用程序开发语言VBA(Visual Basic for Application) 在Excel下编写宏程序,自定义Excel工具栏、菜单栏和界面。简化模板的使用,使用户在运用空气质量指数计算方法中,直接点击“日报计算”按钮,即可得到空气质量指数日报结果。空气质量指数计算方法VBA实现程序代码清单如图3所示的截图。
图3 空气质量指数计算方法程序清单
3 空气质量指数计算方法在Excel中的实现
在进行空气质量日报信息发布或全年空气质量日报统计时,可以直接运行上述程序即可得到参评的7项质量分指数(IAQI)、空气质量指数(AQI)、主要污染物、空气质量指数级别和空气质量指数类别的计算结果。例如,计算北海市2013年9月份空气日报监测结果时,先将各指标浓度数据输入或导入到图1的数据表中(见图4所示的截图),然后直接点击“日报计算”按钮,便得到用户所需要的结果(见图5所示的截图)。若需要日报信息发布,用户可将所需发布的日数据直接复制到Word文档或另一个Excel数据表,然后上传即可,不需要另外制作表格。
图4 空气质量日报监测浓度数据输入或导入结果
图5 空气质量日报指数计算结果
4 结语
与文献[6]中的计算程序相比,本程序有如下特点:
4.1 操作简单,运算快速
实例的10条日报数据,只需单击“日报计算”按键,立即就能得到准确的计算结果。
4.2 适于各月、年度空气质量日报数据统计
程序不仅可以处理一条日报数据,而且可以处理数以万计的日报数据(Excel2003及以前版本,每张工作表最多能保存65 536条日报数据),只需花费几秒钟就能完成,不需要修改程序或做任何操作,使得用户统计每月、每年城市空气质量优劣天数和信息发布变得十分方便。
4.3 具有通用性与普及性
程序清晰,易掌握易改写,不仅可计算各监测点每日的AQI值,若将程序稍加改动,同样能计算出HJ 633-2012中的表4空气质量指数实时报数据格式的发布内容以及空气污染指数(API)。
4.4 具有开拓性
城市空气监测数据往往按HJ 633-2012中的表3格式保存在Excel,在Excel中应用VBA宏语言,开发协同性较好,开发成本低,简单易行,编程工作量较小,大大提高了空气质量信息发布的准确性和使用效率,目前在空气质量日报指数计算中尚为首次。
[1]黄战胜,薛平.Excel软件在计算空气污染指数中的应用[J].中国产业,2011(2):40-41.
[2]李月娥,贺晓蕾,李昌平.利用Excel软件计算空气质量日报污染指数API[J].四川环境,2005,24(2):81-83.
[3]韩波,黄雄巍.神经网络模型在北海市空气日报污染指数计算中的应用[J].中国环境管理干部学院学报,2012,22(3):55-58,69.
[4]吴良忠,韩波,韦华.水质灰色预测模型在VBA中的实现[J].中国环境管理干部学院学报,2013,23(4):45-47.
[5]牟克林,黄世芹,吴江.基于EXCEL报表格式的城市空气质量预报评估系统[J].贵州气象,2007,31(5):22-24.
[6]林艺滨.Excel软件在计算空气质量指数的应用[J].科技资讯,2012(15):131,133.
(编辑:周利海)
The Realization of Air Quality Index Calculation Method based on VBA in Excel
Zeng Mingzhi,Han Bo,Mo Haiping
(Beihai Environmental Monitoring Center,Beihai Guangxi 536000,China)
Air quality index calculation method is the basis of the release of important urban air quality information,which is widely used in air quality assessment in urban air automatic monitoring.According to the calculation method of air quality index(AQI)from the Technical Regulation on Ambient Air Quality Index(on trial,HJ 633-2012),the macro-program based on VBA in Excel was built to achieve the easy release of important daily urban air quality information,which can relieve the users from their repeated filling and inserting function.
air quality index;calculation tool;Excel;VBA
X823
A
1008-813X(2014)01-0008-04
2013-12-13
曾明智(1970-),男,广西北海市人,毕业于天津科技大学工业分析专业,工程师,主要从事环境监测和科研工作。
10.13358 /j.issn.1008-813x.2014.01.03