难度系数:初级
系统:Windows 7
软件:Excel 2010
学习路径图:
学习路径图.JPG
- 针对之前的学习路径图,会针对的写一些文章
- 今天讲讲二项结构,简单来说,就是写代码和存储数据放在不同的文件中,程序+数据库
Why,为什么?
- 为什么要整这个所谓的二项结构?
- 原因:
- 执行效率:如果你编制的系统是长期在使用的,并且需要不断存储数据。如果只是单个文件(程序和数据库都在一个Excel文件中),每次启动程序可能会越来越慢,想想打开10M的Excel和打开20K的Excel文件的体验差别
- 程序的无缝更新:如果你编制的系统是给别人使用的,用户在使用过程中,可能有了一个新的需求,需要更新系统,同时又不能影响他的正常使用。你更新好程序,直接替换程序文件即可,在编制系统这段时间内产生的数据,可以直接使用,无需再次迁移
How,怎么做
- 新人做法:将原来的Excel工作表单独成一个新的Excel即可。和原来程序的区别,多了一个打开和关闭,其它基本不变
- 老司机做法:数据库,例如使用Access专门存储数据。大家想想对于数据库的操作,其实也就那些,查/增/改/删
- 没有数据库概念时,我们就先找到要操作的单元格位置,操作数据,存在找来找去
- 这部分操作,如果使用数据库的玩法,都变成了一句SQL语句,无需具体关注数据放在哪一行,数据库软件系统帮你解决了底层的一些操作
Access
1.pngDo it,执行
- 这篇文章就讲讲新人做法,老司机做法请参考Access版块
- 一个示例:向数据库中写入信息,原数据库只有19号的信息,新增一列20号的信息
效果图
逻辑过程及代码
- 整体分为四个部分
- 获取拟存储的数据,一般通过计算获得,这里直接赋值
- 找到拟在数据库中存入的位置
- 写入数据
- 保存及关闭数据库文件
- 文件结构:由两个文件构成,1个写程序的文件(xlsm),1个数据库文件(xlsx)
- 代码
Sub 示例()
Application.DisplayAlerts = False
'第1部分:获取到拟存入的数据
shijian = "20180520"
heGe = 0.9
buHeGe = 0.1
addr = ThisWorkbook.Path & "\数据库\数据库.xlsx"
Set wb = Workbooks.Open(addr)
Set sht = wb.Worksheets("示例")
'第2步:确认拟存储的位置
colNum = sht.Cells(1, Columns.Count).End(xlToLeft).Column + 1
'第3步:写入数据
sht.Cells(1, colNum) = shijian
sht.Cells(2, colNum) = heGe
sht.Cells(3, colNum) = buHeGe
'第4步:保存及关闭数据库文件
wb.Save
wb.Close
End Sub
文件结构
代码截图
注:一般套路就是这样,主体分为4个部分,复杂情况下,每个部分可能有专门的Function或者Sub去处理
- 如需文中高清并可以无限放大路径图,可以文后留言留下邮箱,小编会发过去
- 本文为原创作品,如需转载,可加小编微信号
learningBin
以上为本次的学习内容,下回见
如发现有错误,欢迎留言指出
更多精彩,请关注微信公众号
扫描二维码,关注本公众号
网友评论