利用VBA自动计算历年日平均气温月标准差

2013-09-29 05:48:44吴有恒孙永顺吴世美
中低纬山地气象 2013年1期

吴有恒,孙永顺,吴世美

(1.贵州省贵阳市气象局,贵州 贵阳 550001;2.贵州省三穗县气象局,贵州 三穗 556500)

1 引言

VBA是Visual Basic For Application的简称,也叫做宏程序,是建立在Office中的一种应用程序开发工具。通过编写代码,使Excel显示我们想要的计算结果,对于新建相同样式的表格只需通过宏录制功能便能使Excel自动生成,无需浪费时间去重复设计,在VB编辑器中还提供了可视化的窗体设计功能,只需拖动相应的控件到想要放置的位置上,再编写相关事件,一个简单的窗体便产生了。笔者通过实现工作中用到的历年日均气温月标准差的自动计算来扩展VBA编程能力。

2 功能分析及算法

2.1 读取A文件气温并求平均值

打开Excel文件,使用快捷键Alt+F11即可调出VB编辑器,在编辑器左上角的工程资源管理窗口中点击鼠标右键新建标准模块,模块即是编写程序代码的一个框架,通过在其中创建Sub子过程来实现算法。

月地面气象资料格式文件(A文件)按一定顺序存放着该月各气象要素数据,通过Open语句打开A文件并存放在Open语句分配的缓冲区内供文件进行输入或输出操作,下面是读取A文件气温并求日平均的值的语句(中文部分是注释):

2.2 自动生成所需样式的表格

打开Excel,选择“工具”→“宏”→“录制新宏”打开录制窗口,借助宏录制功能设计表格样式、字体大小等,录制完成后生成的代码会保存在VB编辑器的模块中。读取A文件气温数据计算得到的日平均值要在生成的表格中按顺序存放,如图1。

图1 各年日平均气温及月标……

登录APP查看全文