这是网盘应用—Excel数据库开发系列最后一期,前面已经完成了“远程工单系统”的设计制作,本期我们来测试一下系统的性能和兼容性。
前期准备工作(包括相关工具或所使用的原料等)
Excel/VBA/酷盘远程工单系统兼容性测试
用VBA开发的系统依托Excel环境,和Excel版本密切相关,而与操作系统关系不大。我们需要把派发客户端和执行客户端拿到不同版本的Excel环境下运行测试兼容性。这一步非常重要,因为一般情况下很难要求所有人都使用统一的办公软件。
从一开始就十分重视兼容性的问题,尽可能避免使用高版本特有的功能,然而还是出了一个小问题:07及以下版本不支持ActiveX按钮。改成表单按钮就解决了。表单按钮视觉效果稍差一些,设置方法简单一些,其它没什么区别。
如图示插入按钮:
![网盘应用—Excel数据库开发:[8]慎终承始](http://www.52ij.com/uploads/allimg/160403/131G91456-0.jpg)
右击按钮指定宏:
![网盘应用—Excel数据库开发:[8]慎终承始](http://www.52ij.com/uploads/allimg/160403/131G93148-1.jpg)
设置按钮格式:
![网盘应用—Excel数据库开发:[8]慎终承始](http://www.52ij.com/uploads/allimg/160403/131G95940-2.jpg)
远程工单系统运行速度测试
执行客户端的“单元格变化即时写入数据库”功能十分考量写入速度,是这款软件最重要的一个指标。在小数据量的环境下我们已经体验过:写入的时候几乎感觉不到有停顿——这正是我们所希望的。然而只凭感觉毕竟不够准确,我们需要测试程序运行所需时间。接下来我们需要加大数据量,将数据库记录增加到5000条,用下面的方法测试一次写入动作所需时间。
现在我们在Worksheet_Change事件过程的首尾加入下面的语句:
Private Sub Worksheet_Change(ByVal Target As Range)
t=Timer
......
MsgBox Timer - t
End Sub
一次写入动作耗时0.531秒。
![网盘应用—Excel数据库开发:[8]慎终承始](http://www.52ij.com/uploads/allimg/160403/131G91403-3.jpg)
现在我们来分段测试一下(请参考上期程序分段):
Private Sub Worksheet_Change(ByVal Target As Range)
t=Timer
'......环境初始化化
MsgBox "环境初始化:" & Timer - t & " 秒"
t=Timer
'......数据有效性判别
MsgBox "数据有效性判别:" & Timer - t & " 秒"
t=Timer
'......打开数据库、单元格写入、关闭数据库
MsgBox "打开数据库、单元格写入、关闭数据库:" & Timer - t & " 秒"
t=Timer
'......重新标色
MsgBox "重新标色:" & Timer - t & " 秒"
End Sub
![网盘应用—Excel数据库开发:[8]慎终承始](http://www.52ij.com/uploads/allimg/160403/131G961a-4.jpg)
我们看到,数据库记录增加到5000条,一次写入动作总耗时0.531秒(属于可承受范围)。其中数据库打开、关闭耗时占到91%。如果数据库记录增加到1万条以上,一次写入动作总耗时会超过1秒(超出可承受范围了)。
结论:如果有朋友打算依照此模型设计一款实际的应用系统,一定要考虑到数据库记录不能超过1万条,理想状况是5000条以内。
思考
本文范例数据库使用Excel文件,其打开、关闭速度成为整个系统的瓶颈,受此限制,数据库记录不能超过1万条。如果能突破这一瓶颈,其应用前景将十分广阔。以后我们会尝试以TXT文件作为数据库的编程方法,因为TXT文件的打开、关闭速度比Excel快很多。
![网盘应用—Excel数据库开发:[8]慎终承始](http://www.52ij.com/uploads/allimg/160403/131G9DD-5.jpg)
相遇短暂情谊长远!朋友们再见!
![网盘应用—Excel数据库开发:[8]慎终承始](http://www.52ij.com/uploads/allimg/160403/131G92534-6.jpg)
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
