Office中国论坛/Access中国论坛

标题: 求助:代码看不懂 [打印本页]

作者: 1122wen    时间: 2016-1-8 16:21
标题: 求助:代码看不懂
各位老师:以下是我看例子时碰到的一些代码,但看不懂,已经筋疲力尽,恳请给予指导。最好可以详细解说下,本人很菜鸟,谢谢啦。

MaxID = DMax("[ygID]", "tblCodeyg")  '取得编码最大值,但编号是Y头的,不是数据也能提取最大值?
currentID = "Y" & Format(Val(Right$(MaxID, 2) + 1), "00") '编号最大值+1
strSQL = "select * from tblCodeyg"
Set rst = CurrentDb.OpenRecordset(strSQL, dbOpenDynaset) ‘个人理解:打开srtSQL数据库
rst.AddNew'个人理解:数据库新增一条,但怎么知道新增是放在原数据后面的单元格
rst!ygid = currentID
rst!ygxm = Me.txtygxm
rst.Update'是为刷新显示出数据吗?
rst.Close
Set rst = Nothing
Me.txtygxm = Null
DoEvents
strFrm = Form_frmYg_sg_Main!frmChild.SourceObject’表示看不懂?为什么和下面一条倒过来
Form_frmYg_sg_Main!frmChild.SourceObject = strFrm’表示看不懂?为什么一正一反
MsgBox "您录入的数据保存已成功!", vbInformation, "消息"



作者: roych    时间: 2016-1-8 17:30
本帖最后由 roych 于 2016-1-8 17:31 编辑

MaxID = DMax("[ygID]", "tblCodeyg")  '取得编码最大值,但编号是Y头的,不是数据也能提取最大值?
'---文本也是可以分大小的。不过如果是数值型的文本时就有些问题,例如:1000<2【文本型时,先比较第一个数字,1比2小,所以……】
currentID = "Y" & Format(Val(Right$(MaxID, 2) + 1), "00") '编号最大值+1
strSQL = "select * from tblCodeyg"
Set rst = CurrentDb.OpenRecordset(strSQL, dbOpenDynaset) ‘个人理解:打开srtSQL数据库
'----这里其实是打开记录集。
rst.AddNew'个人理解:数据库新增一条,但怎么知道新增是放在原数据后面的单元格
'---新增记录必然是在最后一条
rst!ygid = currentID
rst!ygxm = Me.txtygxm
rst.Update'是为刷新显示出数据吗?
'----更新记录集
rst.Close
Set rst = Nothing
Me.txtygxm = Null
DoEvents
strFrm = Form_frmYg_sg_Main!frmChild.SourceObject’表示看不懂?为什么和下面一条倒过来
Form_frmYg_sg_Main!frmChild.SourceObject = strFrm’表示看不懂?为什么一正一反
'---先获取子窗体的源对象字符串,然后将该字符串赋值给子窗体,以达到刷新的目的。
'---【strFrm默认为空字符串】,第一行是先将数据传递给变量。
'---第二行是先将变量传递给子窗体。
'另一种更简洁的写法是:
'Form_frmYg_sg_Main!frmChild.Requery。
MsgBox "您录入的数据保存已成功!", vbInformation, "消息"
作者: leaneam    时间: 2016-1-9 15:03
可以学习一下看看
作者: 1122wen    时间: 2016-1-11 09:21
roych 发表于 2016-1-8 17:30
MaxID = DMax("[ygID]", "tblCodeyg")  '取得编码最大值,但编号是Y头的,不是数据也能提取最大值?
'--- ...

感谢版主的细心解答,请问版主论坛有无类似的专门对某个程序(系统)的详细讲解课程?即针对各个系统从设计到成的每一步过程及细致讲解,谢谢啦~
作者: roych    时间: 2016-1-12 09:13
有时间我再讲解下,目前正在做一个小小的系统。




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3