收藏 分销(赏)

利用Visual Basic自动编制分析测试报告.pdf

上传人:自信****多点 文档编号:584053 上传时间:2024-01-02 格式:PDF 页数:6 大小:1.29MB
下载 相关 举报
利用Visual Basic自动编制分析测试报告.pdf_第1页
第1页 / 共6页
利用Visual Basic自动编制分析测试报告.pdf_第2页
第2页 / 共6页
利用Visual Basic自动编制分析测试报告.pdf_第3页
第3页 / 共6页
亲,该文档总共6页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、实验室通常以检测报告、校准证书或抽样报告的形式提供测试结果.实验室应准确、清晰、明确和客观地出具测试结果,并且所有出具的报告应作为技术记录予以保存.为减轻检测人员因出具检测报告过程繁琐所带来的压力,以 Microsoft Visual Basic 6.0 为开发工具,通过 Visual Basic(VB)对 Excel 数据进行操作,构建了一个分析测试报告自动编制的软件,能快速、准确的编制分析测试报告.对仪器设备得到的数据,在 Excel 中进行复制和粘贴,不需要通过数据库转存,保证了报告编制程序运行的可靠性.程序提高了报告生成的工作效率,使得分析报告格式标准化,便于归档留存,保证其具有可追溯

2、性.关键词:分析测试报告;Visual Basic;自动化编制中图分类号:O65;TP31 文献标志码:B 文章编号:1006-3757(2023)02-0197-06DOI:10.16495/j.1006-3757.2023.02.009Automatic Generating Test Report Based on Visual BasicFU Zehua,WANG Ruhai,SUN Yufang,TANG Haoye(Institute of Soil Science,Chinese Academy of Sciences,Nanjing 210008,China)Abstract:

3、The Laboratories play a crucial role in providing accurate,unambiguous,and objective results in the form oftest reports,calibration certificates,or sampling reports.It is imperative that all reports are maintained as technicalrecords.In order to alleviate the stress of testers due to the cumbersome

4、process of issuing test reports,Microsoft VisualBasic 6.0 was used as a development tool to build a software for the automatic preparation of analysis and test reportsthrough Visual Basic(VB)manipulation of Excel data,which can quickly and accurately prepare analysis and test reports.The data obtain

5、ed from the instrumentation is copied and pasted in Excel,without the need to dump it through thedatabase,ensured the reliability of the report preparation program operation.The program significantly improves theefficiency of report generation,standardizes the analysis report format,and facilitates

6、archiving and retention to ensure itstraceability.Key words:analysis test reports;VB;automatically generated 随着信息技术的不断发展,程序语言的应用越来越广泛,运用合适的程序处理文件不但可以节省人力,而且可以大大提升工作效率1-3.Visual Basic(VB)是 Microsoft 公司开发的一种通用的基于对象的程序设计语言,是结构化的、模块化的、面向对象的、包含协助开发环境的事件驱动为基础的可视化程序设计语言4-6.它拥有图形用户界面和快速应用程序开发系统,可以轻易使用 Data

7、Access Object(DAO)、Remote Data Object(RDO)、Active DataObject(ADO)连接数据库,或者轻松地创建 ActiveX 控件,用于高效生成类型安全和面向对象的应用程序7-12.程序员可以轻松的使用 VB 提供的组件快 收稿日期:20230227;修订日期:20230412.基金项目:中国科学院仪器设备功能开发技术创新项目(2018g0024)Technology Innovation Project of Instrument andEquipment Function Development of Chinese Academy of S

8、ciences(2018g0024)作者简介:傅泽华(1994),女,助理工程师,主要从事土壤与环境分析测试,E-mail:通信作者:王如海(1980),男,高级工程师,主要从事土壤与环境分析测试,E-mail:.第 29 卷第 2 期分析测试技术与仪器Volume 29 Number 22 0 2 3 年 6 月ANALYSIS AND TESTING TECHNOLOGY AND INSTRUMENTSJune 2023 速建立一个应用程序.这种突出的易用性使得 VB可以广泛被用于各类程序的编写,为一些繁杂但是没有适用软件的数据处理工作提供解决途径13-15.根据 GB/T 27025-2

9、019检测和校准实验室能力认可准则“7.8 报告结果”要求和 RB/T 2142017检验检测机构资质认定能力评价检验检测机构通用要求“4.5 管理体系”中“4.5.20 结果报告”的要求.在本文中,使用 VB 设计窗口时,可以使用含有原始检测数据的 Excel 作为输入,根据窗口调整好的格式(行数、列数、基本信息)生成检测报告的文件,保障数据在转换过程中不会出错,并进行打印和留存.科研工作人员得到纸质报告的同时,还可以得到 Excel 电子报告,便于科研人员根据测试报告的数据进行分析处理,得到科研结论.在保持纸质报告和电子报告一致的情况下,为科研人员再次数据分析提供了极大的便利.1软件总体设

10、计通过需求分析及设计要求,本软件需要达到如下功能:通过与软件窗口的交互,使用 Excel 文件生成检测报告并打印,同时在本地留存备份文件以供查看.程序主要通过 VB 对 Excel 数据进行操作,完成报告的编制.软件总体设计流程图如图 1 所示.从 Excel 获得原始数据后,程序检查文件格式是否正确,如果不正确,提示警告返回到数据准备.如果数据格式正确,根据是否需要出具封面,进行下一步操作.如果需要出具封面(完整报告),程序将收集封面需要的信息,完成封面的编制,进而再编制报告正文.如果不需要出具封面(简易报告),VB 将对Excel 数据进行操作,完成报告正文的编制.报告编制完成后,编制人员

11、判断报告是否编制正确.如果不正确则重新编制,如果正确就进行存储和打印.2软件界面与编程 2.1软件的安装与设置开 始 安 装 后,软 件 将 自 动 安 装 在“C:0Reportsconfig”中.报告编制人员需要打开“C:0Reportsconfig”中的 TXT 文件进行设置.将常用的送样单位名称和地址、样品的类别与形态、分析项目的名称、对应的方法标准以及使用的仪器信息进行维护,每条信息独立成行,供软件使用时调取.最常用的信息放在 TXT 文件中作为默认显示在第一行.生成的正式报告和原始记录存放在“C:0Report”中.2.2软件界面与详细设计软件可以通过选择不出具封面 如图 2(a)

12、或出具封面 如图 2(b)来改变软件界面的显示部位,固定窗口位置和大小,使窗口始终保持在最顶部.当界面打开后,软件采用 Dir 检索指定文件夹,若文件 夹 不 存 在,采用 MkDir 创 建 文 件 夹.使 用GetObject 和 objWMIService.ExecQuery 获取指定进程状态,判断 Excel 文件是否已打开,若未打开,用 MsgBox 显示提示“Excel 文件没有打开!”.若文 件 已 打 开,定义 xlApp,使 用 GetObject 访 问Excel 应用程序并赋值给 xlapp.定义 xlBook 存放活动窗口中的工作簿.判断工作簿的文件版本,若为xls,需

13、要转换成 xlsx 再做进一步处理.创建变量 str和 str1,分别存放原文件和新文件的路径和名称,使用 SaveAs 将 xls 文件保存为 xlsx 文件.完成后更新 xlBook 的值,释放变量 str 与 str1.用 for 循环遍历 Excel 中的 sheet,若不存在名为“原始”的 sheet,将活动工作簿顶部的工作表重命名为“原始”.若存在,选中该 sheet.用 for 循环遍历寻找名为“打印报告”的 sheet,若不存在,则新建一个.判断原始工作表的文件格式是否符合要求.根据纵向打印或横向打印的选择,将行数和列数调整为推荐参数.报告单可以通过设置调整纵向 开始读取数据警

14、告提示信息采集检查文件格式出具封面NYYYNN处理数据格式正确存储并打印报告退出图 1生成分析测试报告软件的设计流程图Fig.1Flow chart of software for automaticgenerating test report198分析测试技术与仪器第 29 卷列数和横向行数,并显示为推荐值.行数和列数分别指的是生成报告单的每页的行数和测定结果的排数(每排包括编号和多个项目).委托单号和报告日期将在报告单的抬头显示.检测人、审核人和批准人将在每页报告单的最下方显示,均可通过下拉框选择.在报告编制之前,会对测试原始数据格式进行检查.若第一行第二列为空,提示“待处理文件格式不对:

15、没有项目”.若第二行第二列为空,提示“待处理文件格式不对:没有单位”.若第三行第一列为空,提示“待处理文件格式不对:没有编号”.若第三行第二列为空,提示“待处理文件格式不对:没有结果”.从测试的原始结果到编制完成报告的过程中,复制排版数据属于最核心的部分.m、n 分别存放窗口 输 入 的 每 页 行 数 与 列 数(排 数)数 值,通 过Text.text 赋值.k、l 分别存放原文件中的项目数和样品数,i、j、a、z、y 用于循环.使用 do 循环为 k、l赋值.计算转化后文件所需的页数.用 for 循环给 y赋值,记录 n 为 1 时所需的页数,也可以理解为所有页的总排数.使用 y/n 计

16、算 n 大于等于 1 时的页数,用 if 分支分别处理整除和有余数的情况,将最终值赋予变量“yeshu”.复制表格开头区域的数据,使用 Range.Copy 将“原始”sheet 中表头区域的内容复制到剪贴板.因为文件中每页的每排都需要表 头,所 以 使用 for 循 环,在 循 环 中 用 Range.PasteSpecial 将剪贴板中内容粘贴至“打印报告”sheet 的对应区域.同时在循环中调整表头格式,使用 Merge 合并单元格,Interior.Pattern 指定内部图案,Font.ThemeColor 指定主题颜色,Font.Bold 设置对象字体为粗体.设置页脚.每页需要一行

17、页脚,因此使用 for 循环执行“yeshu”次,用 Cells 给相应单元格赋值并合并单元格.设置页脚格式,使用HorizontalAlignmen、VerticalAlignment 设置水平、竖 直 居 中 对 齐,Font.Name 设 置 字 体 为 宋 体,Font.Size 设置字号,RowHeight 设置行高.复制数据.通过 do 循环将“原始”sheet 中的数据内容复制粘贴到“打印内容”sheet 的相应区域.用PasteSpecial Paste:=xlPasteValuesAndNumberFormats保留其内容与格式.在报告最后标注“以下空白”字样.首先判断最后一

18、页第 n 排的最后一行任意单元格内容是否为空,若不为空,则无空白行,不标注空白.若为空,进入 do 循环.循环变量初始值为单页可能存在数据的最大行数.在循环执行语句中,判断最后一页最后一排该变量行数的任意单元格内容是否为空,若不为空则结束循环,若为空则更新变量为原变量值减 1.最后得到的变量值为内容不为空的最后一行的行数.判断变量值是否为最大行数,若为最大行数,则无空白行,不标注空白.否则更新变量为原变量值加 1,为最后一页最后一排相应行数的单元格赋值“以下空白”.根据 CNAS-CL01:2018检测和校准实验室能力认可准则“7.8 报告结果”要求和 RB/T 2142017检验检测机构资质

19、认定能力评价检验检测机构通用要求“4.5 管理体系”“4.5.50 结果报告”要求,填写以下报告封面信息.封面设计包括报告声明页,当客户要求出具的检验检测报告或证书中包含对标准或规范的符合性声明(如合格或不合格)时,检验检测机构应有相应的判定规则.在出具封面报告时,自动生成报告声明页.设置报告封面格式,采用 HPageBreaks.Add Before 和 VPageBreaks.Add Before 指定水平分页符、竖直分页符位置.列宽使用 Option.Value 判断是纵向打印或横向打印,计算相应的列宽,使用 ColumnWidth 赋值.边框用(a)(b)图 2分析测试报告软件界面Fi

20、g.2Software interface of automaticgenerating test report第 2 期傅泽华,等:利用 Visual Basic 自动编制分析测试报告199Borders 设置上、下、左、右、内部水平、竖直边框的线条类型、颜色、粗细、深浅.设置字体、字号、行高,第一行的行高若小于 17 磅,调整为 17 磅.大于17 磅时,更新为原数值加 5.编制完成报告的输出与保存.检索指定文件夹是否存在,若不存在则新建一个.检索指定文件名(该报告委托单号_原始记录)的 xlsx 文件是否存在,若不存在,将原文件夹中的“打印报告”xlsx 文件保存成新文件夹中指定文件名的

21、 xlsx 文件.检查文件名,用 Sheet.Delete 删除其中“原始”和“打印报告”以外的其他 sheet.提示“完成”后,报告格式处理完毕.判断 Excel 是否打开,若未打开则弹出提示.若已打开,用循环遍历找到新文件中的“打印报告”sheet 并激活.用 Sheet.PrintOut 编写调用打印,出具检测报告.若未找到该 sheet,提示“没有需要打印的报告”.2.3报告排版主要核心代码程序在编写过程中,注意编程的标准化,提高程序相应操作的普适性.在代码中实现功能函数的编写,放入相关的代码,使程序简单、有效,有利于后续升级的可扩展性.报告排版的核心代码如下:确定分析项目数目j=2D

22、o While xlApp.Sheets(准备报告).Cells(1,j)j=j+1Loopk=j2确定需要排版的数据行数i=3Do While xlApp.Sheets(准备报告).Cells(i,1)i=i+1Loopl=i3计算需要输出循环的次数a=3y=0Do While a=l+2a=a+my=y+1Loop数据整理与排版a=3y=0Do While a=l+2xlApp.Sheets(准备报告).Range(xlApp.Sheets(准备报告).Cells(a,1),xlApp.Sheets(准备报告).Cells(a+m1,k+1).CopyxlApp.Sheets(打印报告).

23、Cells(3,y*(k+1)+1).PasteSpecial Paste:=xlPasteValuesAndNumberFormatsa=a+my=y+1Loop 3软件应用针对编制报告原始数据(图 3),应生成报告软件对其进行处理.在软件界面上输入行数和列数.在 Excel 待处理的 sheet 中:B1、C1 等单元格中输入测定项目,B2、C2 等单元格中输入计量单位,A3、A4 等单元格中输入需要在报告中显示的样品的编号.以上行列对应单元格中输入测定数据,数据格式为需在报告中显示的格式.A1、A2 中可以不输入内容,在本 sheet 中不要合并单元格,激活当前sheet 后,输入软件参

24、数进行“处理”,自动编制测试报告正文部分.通过所编写的程序,将仪器设备得到的数据在 Excel 中直接“复制”和“粘贴”,此过程不需要通过数据库转存,因此保证了报告编制程序运行的可靠性.如果需要数据封面,在自动编制测试报告正文部分后,进行测试报告封面的编制,生成在另外一个 sheet 中.程序在处理完成封面时,“样品数”是根据报告中数据自动获取的,需要根据实际情况检查.将软件界面中的送样日期、检测日期、报告日期、分析项目、样品类别、测试方法等编制在封面的测试信息中.在正式报告中,有“封面”“打印报告”这两个 Sheet.软件中有打印按钮,可以打印正式报告两份,一份用于存档,一份用于发放客户.在

25、“封面”sheet 中双面打印报告封面.点击“处理”,会自动生成报告.点击“打印”,程序调动打印机,自动打印两份报告,一份发出,一份留存,并自动保留原始记录和正式报告至选择路径,可使用“查看”功能打开查看.生成的测试报告示例如图 4 所示.200分析测试技术与仪器第 29 卷 4结论这款轻量级软件可以快速启动,只需要几个快捷键就可以快速出具数据,安装方便,占用内存小(不到 15 M 空间),不需要数据库,根据试验结果自动转化成报告模板.分析人员通过将数据从实验室转移到计算机,将数据初步处理、整理到待处理的Excel 中,使用 Visual Basic 对数据进行处理生成报告,通过复制粘贴的数据

26、内容不会出现误差,保障数据的准确性.软件可以快速、轻松地处理和分析大量数据,并且快速编制结果报告,可以提高报告编制的效率.报告会自动存储在指定路径文件夹中,具有很好的溯源性.参考文献:任子龙,刘杰.基于Visual Basic 6.0的信号发生器自动 测 试 系 统J.计 测 技 术,2007,27(5):46-48.REN Zilong,LIU Jie.Automatic testing system ofsignal generator based on Visual Basic 6.0J.Metro-logy&Measurement Technology,2007,27(5):4

27、6-48.1 王俭朴.基于Visual Basic 6.0的数据采集处理系统及应用J.工业控制计算机,2005,18(7):3-4.WANG Jianpu.Data acquisition and disposal systembased on Visual Basic 6.0 and its applicationJ.In-dustrial Control Computer,2005,18(7):3-4.2 向明,罗贤海.基于Visual Basic的优化设计软件开发J.机械研究与应用,2012,25(1):131-133.XI-ANG Ming,LUO Xianhai.Developmen

28、t of optimiza-tion design software based on Visual BasicJ.Mech-anical Research&Application,2012,25(1):131-133.3 杨桂华.可视化编程语言Visual Basic程序设计的特点及教学方法J.内蒙古民族大学学报,2008,14(4):32-33.YANG Guihua.Characteristics andteaching methods of Visual Basic programming lan-guageJ.Journal of Inner Mongolia Univers

29、ity forNationalities,2008,14(4):32-33.4 Al-Juboori A M,Guven A.Hydropower plant site as-sessment by integrated hydrological modeling,geneexpression programming and Visual Basic program-mingJ.Water Resources Management,2016,30(7):2517-2530.5 Rossato S L,Fung T T,Rodrigues M P.A data entrysystem for d

30、ietary surveys based on Visual Basic for 6 图 3测试报告的原始数据的示例Fig.3Example of original data for test report 分析测试报告单委托单编号:2022-05-09-77001报告日期:2022/5/9检测人:王如海 傅泽华审核人:唐昊冶批准人:孙玉芳mg/Lmg/L3231302928272625242322212019181716151413121110987654321硝态氮+亚硝态氮(以氮计)铵态氮(以氮计)编号以下空白0.5230.2170.2170.2100.3090.4980.2850.30

31、30.2220.2270.1810.1770.1710.2000.1850.1800.2060.1860.1810.2210.1990.1880.2180.2090.2230.2990.3440.3010.1950.1960.2170.1852.612.422.462.552.382.562.682.562.181.790.9270.7900.9711.290.4330.7990.3870.5820.6580.4330.5810.5366.102.343.633.503.513.491.251.171.350.103第 1 页/共 1 页图 4生成的测试报告的示例Fig.4Example of

32、 generated test report第 2 期傅泽华,等:利用 Visual Basic 自动编制分析测试报告201applications programmingJ.Journal of the Academyof Nutrition and Dietetics,2017,117(8):1165-1170.Dinesh A C,Markose V J,Jayappa K S.Linfo-a Visu-al Basic program for lineament density,frequency andintersection density analysisJ.Earth Scie

33、nce Inform-atics,2014,7(3):197-203.7 Escobar R,Prez-Herrera C A.Low-cost USB inter-face for operant research using Arduino and VisualBasicJ.Journal of the Experimental Analysis of Be-havior,2015,103(2):427-435.8 Kumar N,Pandey K P.A Visual Basic program forpredicting optimum gear and throttle positi

34、on for bestfuel economy for 32kW tractorJ.Computers andElectronics in Agriculture,2015,119:217-227.9 Duy N N.Potential of Visual Basic 6.0 in teaching andstudying physicsJ.New Physics:Sae Mulli,2022,72(7):512-524.10 Ismail Ozkaya S.SUPERPOSE-An excel Visual Ba-sic program for fracture modeling based

35、 on the stresssuperposition methodJ.Computers&Geosciences,2014,64:41-51.11 Suarez-Navarro J A,Pujol L,Suarez-Navarro M J,etal.A method for gamma background subtraction usingVisual Basic for applications code with Microsoft Ex-celJ.Journal of Radioanalytical and Nuclear Chem-istry,2019,319(3):115

36、9-1163.12 Torlapati J,Prabhakar Clement T.Benchmarking aVisual-Basic based multi-component one-dimensionalreactive transport modeling toolJ.Computers&Geosciences,2013,50:72-83.13 Wakita Y,Yamanaga T,Katayama Y,et al.Develop-ment of dose management software using Visual Ba-sic for applications an

37、d dose evaluation in the field ofnuclear medicineJ.Nihon Hoshasen Gijutsu GakkaiZasshi,2022,78(11):1273-1281.14 张海涛,许光泉.基于Visual Basic 6.0的含水层水文地质参数求取软件的开发及应用J.煤田地质与勘探,2018,46(2):105-110.ZHANG Haitao,XUGuangquan.The development and application ofaquifer hydrogeolgical parameter calculation softwarebased on Visual Basic 6.0J.Coal Geology&Ex-ploration,2018,46(2):105-110.15 202分析测试技术与仪器第 29 卷

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签
资源标签

当前位置:首页 > 学术论文 > 论文指导/设计

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服