APP下载

基于 Excel VBA的开发技术在重型动力触探试验中的应用*

2011-01-09杨沧生

地震研究 2011年1期
关键词:单元格应用程序图表

杨沧生

(云南省地震局,昆明 650224)

基于 Excel VBA的开发技术在重型动力触探试验中的应用*

杨沧生

(云南省地震局,昆明 650224)

通过 ExcelVBA宏语言程序来解决重型动力触探试验的成果分析和自动化出图的问题,在工程实践中得到验证。将 Excel强大的电子表格计算能力与 ExcelVBA增加的自动功能相结合,可方便地将试验结果输出为模版式图表,使试验成果管理得到规范和系统化,有利于开发程序所应用专业的技术推广或前沿拓展。从系统分析、软件工程的开发界面、数据流程设计、模块设计、关键技术、工作表设计原则与技巧等方面介绍了开发应用程序的特点和注意事项。

系统分析;数据流程;模块设计;关键技术;工作表设计

0 概述

重型圆锥动力触探是土体原位测试的一种勘察技术。随着基础设施建设工作增多,特别是在公路等工程建设中,大量使用碎石桩处理软基技术,用重型动力触探试验对碎石桩的施工质量进行检测(张丽等,2002),快速、自动化处理动力触探试验数据的需求越来越高。尽快得出试验成果,为工程决策及时提供依据,已成为一个重要的环节,同时也是确保工程质量和安全的关键因素。Excel VBA是在Microsoft Excel中使用的宏语言,主要为了增强 Excel软件使用的自动化能力。在岩土工程重型动力触探试验工作中,运用 Excel强大的电子表格计算能力和 ExcelVBA增加的自动功能,可以轻松完成试验记录、统计计算和制作图表等特定任务。

1 系统分析

岩土工程勘察专业软件系统是为自动完成岩土工程重型动力触探试验统计计算和绘制成果图表而设计的。重型动力触探试验成果的数据处理主要有触探指标和触探曲线。触探指标包括阵击数、总击次、阵击击次平均值、阵击标准差、变异系数、探杆校正后不达标的阵击数等数理统计值。利用 Excel软件的图表功能可以根据录入的数据来编辑绘制触探曲线。笔者曾尝试用 3个 Excel工作簿的 170个 Sheet表编制了一套半自动的处理重型动力触探试验数据的程序组,其主要特点是:①若以 10 cm为一个锤击阵击单位,从 1 m深度起算,每个试验终孔深度对应一个 Sheet表,全套程序组可以处理深至 18 m的重型动力触探试验数据;②将每一个试验孔的原始测试数据、触探指标、触探曲线和试验文字记录汇总成试验成果图表;③利用 Sheet表的单元格公式、函数和嵌入式图表的数据源自动链接功能制作成工作表模版,在录入原始测试数据的同时即生成触探指标、触探曲线。该程序组之所以称为 “半自动”,就是在修正探杆长度时是采用手动输入修正系数于单元格公式中。一个熟练的制表分析员完成一个探孔的重型动力触探试验成果图表制作和打印,平均耗时 6 min。

为了进一步增强用 Excel处理触探试验数据的自动化能力,本系统的开发直接采用Microsoft Excel作为平台,它包括以下开发要素:用户界面设计、逻辑设计,面向对象或面向过程的程序以及数据层等。Excel应用程序可以完成相当多的计算任务,可以满足多种应用程序需求,从用户界面、逻辑设计、报表设计到最终的打印,Excel都可以在设计上满足开发者的需求(黄睿,马然,2006;刘迎甫,2004)。本程序开发的全过程体现出 Excel开发平台的优越性。

2 软件工程的开发界面

软件开发界面(VBE)为 Excel工具按钮下的宏编辑器,同时按下 Alt和 F11键也可进入(图1)。图中在源代码窗口内正置设计一个输入钻探参数的用户窗体。

图1 ExcelVBA开发平台 VBEFig.1 Software-developing platform of ExcelVBE

3 数据流程设计

数据流程如图 2所示,Excel VBA数据源代码的运行特点是顺序执行,在 1、2两个节点处有分支迂回。

图2 ExcelVBA数据流程Fig.2 ExcelVBA data flow

4 模块设计

模块和窗体用于存放不同功能的程序过程或子过程,如图 3所示,根据需要添加形成系统构架,符合面向对象的程序语言设计方法(郝效强等,2009)。

图3 模块和用户窗体Fig.3 Module and user for ms

5 关键技术

由程序输出的版式图表有 3个要求:能够对试验的基本情况进行记录和管理;能够给出试验结果的触探指标;用数据图表直观反映试验情况(图4)。

5.1 数据输入与转换

数据输入可采用程序本身的 Excel表单元格直接录入,或从其它 Excel表、文本文件、数据库等经过程序数据转换而导入(鱼明,2006;王建国等,2009)。

5.2 数据检查

根据重型动力触探试验的锤击数为 1~50的整数的特点,在数据输入过程中,非此数据特点的其它误操作数据都由程序自动检查并提前产生错误更正提示(杜茂康,2005),以免后续程序出错或中断运行。

5.3 数据处理

锤击数随深度变化时,根据《岩土工程勘察规范》(GB50021-2001)的规定,必须按式(1)对实测数据作探杆长度修正(工程地质手册编委会,2007):

图4 程序输出的版式成果图表Fig.4 Result given by the program

式中,N63.5为经杆长校正后的试验锤击数;N为贯入 10 cm的实测锤击数;α为触探杆长校正系数,按表 1选定或进行内插。

表1 重型圆锥动力触探锤击数修正系数αTab.1 Correction coefficient(α)about the hammer number of heavy dynamic sounding test

源代码采用动探深度内的阵击数作为 For…Next语句的循环数,用 Select Case…End Select分支语句判断锤击数,嵌套内用 9个 Select Case…End Select分支语句判断探杆长度后得到修正值。

其它数理统计值由公式和函数计算得到。

5.4 图表生成

输入数据后暂时不能作为源数据,因为在 Excel中没有现成的方折曲线制作模具,笔者经过特殊数据转换后,在其它任何两个空白列形成图表源数据,再采用 Excel的插入 “散点图”功能,最后绘制成触探曲线。

本系统解决的关键技术有触探曲线生成和《工程地质手册》(第四版)的表 3-2-4中有关动力触探试验探杆长度的修正系数表及其相互间的逻辑关系问题。

6 工作表设计原则

新设计的重型动力触探试验应用程序,仅用 1个 Excel工作簿内嵌宏语言而成。工作表分配大致有试验数据表、3个成果图表备份表、数据库、图库等。

(1)试验数据表是成果图表产生前的数据存储地和用户界面,其设计的基本准则是:对于不同目的的单元格使用不同的格式,包括字体、颜色等,在视觉上有层次感,容易区分不同单元格的作用。为防止用户输入无关或错误数据导致工作表发生错误,要尽量锁定除用户输入单元格之外的其他界面元素。在这方面,不同的设计者有不同的技巧(刘锦龙,2007),本系统采用工作表事件来控制锁定试验数据表中写有关键字段的单元格(Project-A&Dekiru系列编辑部,2007),当误点击这些单元格时光标会被自动移开。

(2)在自动完成试验成果图表的制作、打印的同时,程序自动备份试验成果图表在工作表中,可以分页预览或再次集中整页打印。

(3)试验数据表中的各段探杆深度数据、阵击深度数据、实测锤击数据和修正数据另外自动备份在数据工作表中。

(4)图库工作表用于自动备份图片格式的成果图表,可作为电子档案参考资料。

7 操作命令

本系统设计了高效便捷的操作按钮,随 Excel VBA宏程序运行而自动加载。加载后在 Excel工作表的命令栏出现 “加载项”按钮,其下的程序菜单如图 5所示。

图5 程序执行按钮Fig.5 Executive buttons of the program

8 结论

重型动力触探试验数据处理在使用 Excel VBA应用程序以后,完满流畅地解决了自动化功能的问题,可以非常方便地将试验结果输出为模版式图表,使试验成果管理得到规范化和系统化,有利于开发程序所应用专业的技术推广或前沿拓展。应用 ExcelVBA开发岩土工程勘察专业软件是一种新的尝试,为批量整理成果资料提供了强有力的工具。Excel是很普及的办公软件,在此平台有利于实用专业软件开发技术的推广。推广应用该程序后,我们完成了昆明新机场建设地震动试验,昆明高峣至海口、罗村口至富宁、云南水富至麻柳湾等高速公路工程建设碎石桩地基处理,还有贵州电解铝工程建设强夯地基处理等一批重点工程的累计上万张重型动力触探试验成果图表的制作,较好地保证了这些项目的进度。

在撰写本文过程中,笔者得到中国有色金属工业昆明勘察设计研究院李鸿祥高级工程师、云南省地震局安晓文高级工程师、昆明市建筑设计院凌文高级工程师的悉心指导和帮助。在此,表示诚挚的感谢。

杜茂康 .2005.Excel在数据管理与分析中的应用[M].北京:清华大学出版社

工程地质手册编委会 .2007.工程地质手册 (第 4版)[M].北京:中国建筑工业出版社 .

郝效强,杨仕升,秦荣 .2009.含剪力墙钢筋混凝土结构抗震能力评估软件的开发及应用[J].地震研究,32(1):74-78.

黄睿,马然 .2006.Excel VBA应用程序专业设计实用指南[M].北京:电子工业出版社 .

刘锦龙 .2007.ExcelVBA应用程序在计算工作量中的应用[J].科技资讯(7):37-38.

刘迎甫 .2004.Visual Foxpro面向对象程序设计[M].北京:清华大学出版社 .

王建国,贾连弟,崔晓峰,等 .2009.数字化地震前兆台网日常工作管理软件[J].地震研究,32(1):79-83.

鱼明 .2006.浅谈 Excel与应用程序之间数据交换的应用[J].甘肃科技,22(10):53-54.

张丽,张建婕,张焕智 .2002.动力触探试验数据管理分析系统设计与应用[J].黑龙江水利科技(4):100-102.

GB50021-2001,岩土工程勘察规范[S].

Project-A&Dekiru系列编辑部.2007.Excel VBA大全[M].彭彬译.北京:人民邮电出版社 .

Application of the Development Techn ique Based on Excel VBA to Heavy Dynam ic Sounding Test

YANG Cang-sheng
(Earthquake Adm inistration of Yunnan Province,Kunm ing650224,Yunnan,China)

The problem that using the Excel VBA m acro-language to analyze the results and the autom atic m apping of the heavy dynam ic sounding test has been solved and validated in the engineering practice.It is expedient to transfer the test results to the stencil chart and standardize and system ize the m anagem ent of the test achievem ents by the help of the pow erful table-calculation function of Excel and autom atic function of ExcelVBA.Thus,It is favorable to popularizing and broadening the techniques of the related fields.The features of the soft w e developed,such as system analysis,interface developm ent softw are,data-flow design,m odule design,key technique,principle and technique in the design of the w orksheet are introduced.

system analysis;data flow;m odule design;key technique;w orksheet design

TP311.52

A

1000-0666(2011)01-0108-05

2010-08-11.

云南省科技攻关及高新技术发展计划(2006GG38)资助 .

猜你喜欢

单元格应用程序图表
合并单元格 公式巧录入
流水账分类统计巧实现
玩转方格
玩转方格
删除Win10中自带的应用程序
谷歌禁止加密货币应用程序
双周图表
双周图表
双周图表
图表